Hier zeige ich euch wie man Date aus einer MySQL-Datenbanktabelle in eine Spinner lädt. Die Spinner befindet sich dabei in der layoutdatei settings.xml.
Hier die activity settings
Java
public class settings extends Activity {
SQLiteDatabase myDB = null;
final static String MY_DATABASE_NAME = "TankPro2";
final static String MY_DATABASE_TABLE = "fahrzeuge";
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.settings);
LoadFahrzeugSpinner();
}
public void LoadFahrzeugSpinner(){
myDB = this.openOrCreateDatabase(MY_DATABASE_NAME, MODE_PRIVATE, null);
Cursor myCursor = myDB.rawQuery("SELECT _id, name, model FROM " + [/quote]MY_DATABASE_TABLE + ";", null);
startManagingCursor(myCursor);
Spinner kfzSpinner = (Spinner)findViewById(R.id.cbFahrzeuge);
myCursor.moveToFirst();
SimpleCursorAdapter spinadapter = new SimpleCursorAdapter(
this,
android.R.layout.simple_spinner_item,
myCursor,
new String[] { "name" },
new int[] {android.R.id.text1});
spinadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
kfzSpinner.setAdapter(spinadapter);
kfzSpinner.setPrompt(this.getResources().getString(R.string.KFZAuswahl));
kfzSpinner.setAdapter(spinadapter);
}
}
Alles anzeigen
settings.xml
Code
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/layout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:text="@+string/KFZAuswahlHinweis"
android:id="@+id/tv_KFZAuswahlHinweis"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dip"
android:layout_gravity="center_vertical"/>
<Spinner
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/cbFahrzeuge"
android:prompt="@string/KFZAuswahl"/>
</LinearLayout>
</ScrollView>
Alles anzeigen
strings.xml
Code
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Strings -->
<string name="KFZAuswahl">Wählen Sie ein Fahrzeug...</string>
<string name="KFZAuswahlHinweis">Bitte wählen Sie das Fahrzeug das Sie tanken wollen!</string>
</resources>
Der Vollständigkeit halber hier noch die Funktion zum erstellen der Datenbank und der Datenbanktabellen. Es müssen nur noch Werte in die Datenbank eingetragen werden damit man diese dann in der Spinner anzeigen lassen kann.
Code
private void onCreateDBAndDBTabled()
{
myDB = this.openOrCreateDatabase(MY_DATABASE_NAME, MODE_PRIVATE, null);
// myDB.execSQL("DROP TABLE IF EXISTS " + MY_DATABASE_TABLE + ";");
myDB.execSQL("CREATE TABLE IF NOT EXISTS " + MY_DATABASE_TABLE
+ " (_id integer primary key autoincrement,
name varchar(100),
model varchar(100),
bemerkungen varchar(255),
kraftstoffart integer(3),
tankinhalt integer(3))"
+";");
}
Alles anzeigen