我有一個listView從SQLite數據庫加載數據,現在我想實現一個onclicklistener到列表。當用戶點擊列表時,它應該將它們帶到下一個活動並將相應的數據加載到TextView中。我的問題是,我將如何傳遞列表的數據,例如它是一個「主題」列表,並且用戶點擊主題「我的主頁」。我想將主題「我的家」傳遞給下一個活動,以便我分別知道要檢索哪些相應的數據。Android從SQLite數據庫加載數據到下一個活動
我該怎麼辦?我是否將「提取」放到新的意圖中?或者有另一種方式。下面是我的代碼,它們顯示列表視圖部分:
ListView listContent = (ListView) findViewById(R.id.contentlist);
mySQLiteAdapter = new SQLiteAdapter(this);
mySQLiteAdapter.openToRead();
Cursor cursor = mySQLiteAdapter.queueAll();
startManagingCursor(cursor);
String[] from = new String[] { SQLiteAdapter.KEY_CONTENT };
int[] to = new int[] { R.id.text };
SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(this, R.layout.listrow, cursor, from, to);
listContent.setAdapter(cursorAdapter);
mySQLiteAdapter.close();
//Onclick ListView setlistener
listContent.setTextFilterEnabled(true);
listContent.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Intent summaryIntent = new Intent(DocumentListActivity.this, ViewDocumentActivity.class);
// summaryIntent.putExtra("SummTopic", value);
}
});
編輯: 這部分是下一個活動。
android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 0
請幫助:
Intent i = getIntent();
extraTopic = i.getStringExtra("SummTopic");
mydb = openOrCreateDatabase(DBNAME, Context.MODE_PRIVATE,null);
Cursor allrows = mydb.rawQuery("SELECT * FROM "+ TABLE + " WHERE topic = \" " + extraTopic + " \" " , null);
Integer cindex = allrows.getColumnIndex("topic");
Integer cindex1 = allrows.getColumnIndex("text1");
Integer cindex2 = allrows.getColumnIndex("text2");
我在從數據庫中檢索得到一個錯誤。
謝謝。
嗨,這確實有幫助。謝謝。但在下一次活動檢索時出現錯誤。你能否幫助我在編輯過的部分中引用我的代碼。謝謝 – mellissa
好的,我確實改變了我的回答 – Selvin
這完美的作品。謝謝一堆! – mellissa