0
我一直在試圖將微調器綁定到數據庫,並最終成功。我已使用cursoradapter將微調器連接到數據庫表。但問題是微調器被填充,但其中的列表項顯示空白文本。我知道綁定是成功的,因爲它顯示的行數與數據庫表中的記錄數一樣多。 無法弄清楚它是什麼。一些機構請幫我在這裏停留 我張貼下面微調數據連接問題 - 數據綁定成功,但微調顯示空白文本
public long createAccount() {
ContentValues initialValues = createContentValues();
Log.i("DB", initialValues.get(KEY_NAME)+":"+
initialValues.get(KEY_MAILBOXTYPE)+":"+
initialValues.get(KEY_OUTPORT)+":"+
initialValues.get(KEY_INPORT)+":"+
initialValues.get(KEY_INSERVER)+":"+
initialValues.get(KEY_OUTSERVER)+":");
return database.insert(DATABASE_TABLE, null, initialValues);
}
/**
* Return a Cursor over the list of all todo in the database
*
* @return Cursor over all notes
*/
public Cursor fetchAccount() {
Log.i("DB", "Cursor opened");
return database.query(DATABASE_TABLE, new String[] { KEY_ROWID,
KEY_NAME,KEY_INSERVER}, null, null, null,
null, null);
}
代碼的代碼微調結合低於:
mAccAdap.createAccount();
Cursor c = mAccAdap.fetchAccount();
startManagingCursor(c);
SimpleCursorAdapter CursorAdapter = new SimpleCursorAdapter(
this,android.R.layout.simple_spinner_item,c,
new String[]{mAccAdap.KEY_INSERVER},new int[]{R.id.tvDBViewRow});
CursorAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinEmail=(Spinner)findViewById(R.id.spinAccount);
spinEmail.setAdapter(CursorAdapter);
哇。有效。非常感謝。但是你能否也請解釋它背後的原因。 –
這是因爲你用這行'android.R.layout.simple_spinner_item'指定了一個內置的Android模板......在這個模板中有一個id爲「text1」的元素。當您嘗試引用'R.id.tvDBViewRow'時,它不在那裏,因爲該ID不在佈局模板XML中。您當然可以創建自己的佈局XML,以用於此「SimpleCursorAdapter」,然後引用您自己的「TextView」。 – DRiFTy