onCreate()
Methode:Anzeige ein Symbol aus der Datenbank
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.database);
ListView lv=(ListView)findViewById(R.id.mylist);
dbh = new DatabaseHelper(this);
c = dbh.getReadableDatabase().rawQuery("SELECT _id, " +
DatabaseHelper.NAME +
", " + DatabaseHelper.LASTNAME +
", " + DatabaseHelper.ans2 +
" FROM " +
DatabaseHelper.TABLE_NAME, null); // initializing
String[] dataFrom ={DatabaseHelper.NAME, DatabaseHelper.LASTNAME, DatabaseHelper.ans2};
int[] dataTo = {R.id.name, R.id.value1, R.id.value2};
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.row, c, dataFrom, dataTo);
lv.setAdapter(adapter);
registerForContextMenu(lv);
}
Meine row.xml
Datei alle Daten anzuzeigen:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="30"
android:id="@+id/name"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="40"
android:gravity="center_horizontal"
android:id="@+id/value1"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="30"
android:gravity="right"
android:id="@+id/value2"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:src="@drawable/ic_launcher"
android:id="@+id/icon"
/>
</LinearLayout>
ich erfolgreich eine Tabelle mit SQLite erstellt haben. Ich möchte in jeder Datenbankzeile ein Symbol anzeigen, das angezeigt wird (mit ListView
) und das Symbol sollte von einem bestimmten Element aus der Zeile abhängen. Zum Beispiel, wenn das Geschlecht (DatabaseHelper.SEX
) männlich ist, dann würden wir ein männliches Symbol anzeigen, und wenn das Geschlecht weiblich ist, würden wir ein weibliches Symbol anzeigen. Wenn Sie sich meine XML-Datei ansehen, habe ich bereits ein Symbol (das ist das Standard-Android-Symbol, aber das ist nicht was ich will). Irgendwelche Ideen?
Dank, lassen Sie mich versuchen, einige Zeit –
Gimme wie funktioniert genau den Index der Sex Spalte column zu bekommen? und die Sex-Spalte ist ein String-Datentyp –
@da_scav_from_windy_city Wenn Sie sich das 'dataFrom'-Array ansehen, werden Sie feststellen, dass' DatabaseHelper.SEX' und das 'R.id.icon' (aus dem' dataTo'-Array) auf dem gleiche Position, so dass der 'ViewBinder' weiß, welchen Spaltenindex Sie in der' setViewValue' Methode erhalten sollen. Wie gesagt, ich weiß nicht, wie Sie das Geschlecht in der Datenbank speichern, ich habe einfach angenommen, dass Sie einen 'int' Wert (' 0' oder '1' abhängig vom Geschlecht) verwenden, wenn Sie eine' Zeichenfolge' verwenden und dann bekommen das 'String' und benutze das. – Luksprog