이 내 응용 프로그램에 대한 제휴 활동이다는
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:alignmentMode="alignBounds"
android:orientation="horizontal"
android:useDefaultMargins="true" >
<TextView
android:id="@+id/allc_lstRow_textView1"
android:layout_width="50sp"
android:layout_height="wrap_content"
android:gravity="right"
android:paddingRight="10dp"
android:text="@string/tallc_id"
android:textSize="18sp"/>
<TextView
android:id="@+id/allc_lstRow_textView2"
android:layout_width="140sp"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/allc_lstRow_textView1"
android:gravity="left"
android:text="@string/lst_item_allc_name"
android:textSize="18sp"/>
<TextView
android:id="@+id/allc_lstRow_invisible"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/allc_lstRow_textView2"
android:layout_width="1dip"
android:gravity="left"
android:textSize="1sp"/>
<TextView
android:id="@+id/allc_lstRow_textView3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/allc_lstRow_invisible"
android:layout_gravity="right"
android:gravity="right"
android:text="@string/lst_item_allc_power"
android:textSize="18sp"/>
</RelativeLayout>
는 그리고 이것은 ViewBinder와 SimpleCursorAdapter이를 사용자 정의하는 것입니다 얼라이언스 (적위한 속국 및 레드 중립을위한 그레이, 블루 앨리를 들어, 녹색)의 색상 :
SimpleCursorAdapter dataAdapter = new SimpleCursorAdapter(
this,
R.layout.lst_row_act_allc,
mCursor,
cols,
to,
0);
dataAdapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() {
@Override
public boolean setViewValue(View view, Cursor cursor, int column) {
if(column == 1){
TextView tv = (TextView) view;
String mPltc = cursor.getString(cursor.getColumnIndex("FPLTC"));
if (BuildConfig.DEBUG) {
Log.i(Constants.TAG_ACTALLIANCES, "loadAllianceData(): Alliance Name: "+cursor.getString(cursor.getColumnIndex("FANAME")));
Log.i(Constants.TAG_ACTALLIANCES, "loadAllianceData(): Political Relation: "+mPltc);
}
// Set color of item based on Political Relation
if(mPltc.equals("Ally")){
tv.setTextColor(Color.parseColor("#6699ff"));
String mAN = cursor.getString(cursor.getColumnIndex("FANAME"));
tv.setText(mAN);
}
if(mPltc.equals("Vassal")){
tv.setTextColor(Color.parseColor("#00ff00"));
String mAN = cursor.getString(cursor.getColumnIndex("FANAME"));
tv.setText(mAN);
}
if(mPltc.equals("Enemy")){
tv.setTextColor(Color.parseColor("#ff0000"));
String mAN = cursor.getString(cursor.getColumnIndex("FANAME"));
tv.setText(mAN);
}
if(mPltc.equals("Neutral")){
String mAN = cursor.getString(cursor.getColumnIndex("FANAME"));
tv.setText(mAN);
}
return true;
}
return false;
}
});
지금 로그 캣 텍스트가 보임에 따라)
- setViewValue (더 실행됩니다 약자로, 두 가지 문제가 여기에있다,
03-11 21:48:15.229: I/ActAlliances(7823): loadAllianceData(): Alliance Name: IMMORTALS 03-11 21:48:15.328: I/ActAlliances(7823): loadAllianceData(): Political Relation: Neutral 03-11 21:48:15.497: I/ActAlliances(7823): loadAllianceData(): Alliance Name: Legion of Anarchy 03-11 21:48:15.497: I/ActAlliances(7823): loadAllianceData(): Political Relation: Ally 03-11 21:48:15.590: I/ActAlliances(7823): loadAllianceData(): Alliance Name: TheCulture 03-11 21:48:15.590: I/ActAlliances(7823): loadAllianceData(): Political Relation: Enemy 03-11 21:48:15.608: I/ActAlliances(7823): loadAllianceData(): Alliance Name: Rising Storm 03-11 21:48:15.608: I/ActAlliances(7823): loadAllianceData(): Political Relation: Vassal 03-11 21:48:15.647: I/ActAlliances(7823): loadAllianceData(): Alliance Name: NULL ALLIANCE 03-11 21:48:15.647: I/ActAlliances(7823): loadAllianceData(): Political Relation: Neutral 03-11 21:48:15.677: I/ActAlliances(7823): loadAllianceData(): Alliance Name: OMEGA 27 03-11 21:48:15.677: I/ActAlliances(7823): loadAllianceData(): Political Relation: Neutral
그러나 : iew 동맹 이름이 정치의 관계를 나타내는 데이터베이스 테이블에서 열의와 일치되어 유지하지 ListView가 표시 될 때와 사용자가 수행하기 전에 4 번 미만입니다.
- 목록의 첫 번째 항목 (이 경우 IMMORTALS)은 마지막으로 적용된 색상에 따라 다시 채색됩니다 (목록 항목의 경우 회색이 기본 색상이기 때문에 중립적 인 동맹을 표시하기 때문에 실제로는 계산되지 않습니다). 색상을 적용하지 않고 이름 난이 버그를 수정하고, 일체의 지원을 부탁드립니다 필요
참고 :.. 내가 ListActivity를 사용하지 않았기 때문에 처음 두 줄 (부문, 제휴의 수) ListView의 일부가 아니며, 그 결정을 재고하기 위해 기꺼이합니다.
네가 맞아. 그래서 ... 교훈은 "누구에게 행해지는 것이 모두에게 행해져 야합니다." 고맙습니다! 절대 돈이 떨어지지 않을 수 있습니다! – Quasaur