是否可以創建一個由SimpleCursorAdapter驅動的View。這個視圖的內容永遠是來自數據庫的條目。android - SimpleCursorAdapter查看
的視圖(數據視圖)看起來像:
txtData1
txtData2
txtData3
btnPrev btnNext
我看周圍,tryd設置此行爲。希望它做SENS:
public class mActivity extends Activity {
public Context me = this;
public SimpleCursorAdapter mAdapter = null;
public Cursor mCursor = null;
private OnClickListener btnStart_onClick = new OnClickListener() {
public void onClick(View v) {
setContentView(R.layout.dataView);
mCursor = mDB.rawQuery("SELECT * FROM Data", null);
startManagingCursor(mCursor);
mAdapter = new SimpleCursorAdapter(
me,
R.layout.dataView,
mCursor,
new String[] {"Data1", "Data2", "Data3"},
new int[] {R.id.txtData1 , R.id.txtData2, R.id.txtData3});
mAdapter.setViewBinder(VIEW_BINDER);
mCursor.moveToFirst();
}
};
static final ViewBinder VIEW_BINDER = new ViewBinder() {
public boolean setViewValue(View view, Cursor cursor, int columnIndex)
{
switch (view.getId())
{
case R.id.txtData1:
TextView txt = (TextView) view;
if (txt != null)
{
int index = cursor.getColumnIndex("Data1");
txt.setText(cursor.getString(index));
}
return true;
case R.id.txtData2:
TextView txt = (TextView) view;
if (txt != null)
{
int index = cursor.getColumnIndex("Data2");
txt.setText(cursor.getString(index));
}
return true;
case R.id.txtData3:
TextView txt = (TextView) view;
if (txt != null)
{
int index = cursor.getColumnIndex("Data3");
txt.setText(cursor.getString(index));
}
return true;
default:
return false;
}
}
};
}
當我從btnStart_onClick我沒有在我的文本框獲取數據:-(運行
有人可以幫它可以像這樣工作
下一個問題:怎麼了?我可以使用上一個或下一個按鈕嗎?可能這是我錯過了「加載」第一個數據的唯一...
編輯:我擴展我的例子與全局mCursor和調用mCursor.moveToFirst() 在我的應用程序上,我也測試了下一個/上一個按鈕和功能mCursor.moveToNext()和mCursor.moveToPrevious()
但它不是:-(
歡迎來到Stackoverflow!如果您發現回覆有幫助,請投票。如果回覆成功回答您的問題,請點擊旁邊的綠色複選標記以接受答案。也請看看http://stackoverflow.com/questions/how-to-ask關於如何寫一個很好的問題的建議 –
你檢查過,以確保SQL查詢實際上是返回的東西? –
我相信你可以使用SimpleCursorAdapter來工作......但爲什麼不只是使用一個Cursor呢? –