当我点击一个ListView项目时,我收到以下消息: 如何读出项目并将项目名称转换为字符串?为什么它无法读取ListView?
public void onListItemClick(
ListView parent, View v,
int position, long id)
{
Object o = this.getListAdapter().getItem(position);
String keyword = o.toString();
Toast.makeText(this, keyword, Toast.LENGTH_SHORT).show();
}
这样我可以读从项目位置:
public void onListItemClick(
ListView parent, View v,
int position, long id)
{
open_database_rw();
Object itemId = this.getListAdapter().getItemId(position);
String item = itemId.toString();
Toast.makeText(this, item, Toast.LENGTH_SHORT).show();
}
现在我想选择的数据读出到举杯。我尝试过这种方式,但它没有工作:
public void onListItemClick(
ListView parent, View v,
int position, long id)
{
open_database_rw();
Cursor cursor = db.query("tbl_homework", new String[] {"hw"},
"_id = 1", null, null, null, null);
int column = cursor.getColumnIndex("hw");
String item = cursor.getString(column);
Toast.makeText(this, item, Toast.LENGTH_SHORT).show();
}
ERRORMESSAGE: android.database.CursorIndexOutOfBoundsException:指数-1要求,具有尺寸1个
问题已经解决了!我必须将光标移动到第一个 cursor.moveToFirst();
全部工作代码:
public void onListItemClick(
ListView parent, View v,
int position, long id)
{
open_database_rw();
Object itemId = this.getListAdapter().getItemId(position);
String item = itemId.toString();
Cursor cursor = db.query("tbl_homework", new String[] {"hw"},
"_id =" + item, null, null, null, null);
cursor.moveToFirst();
int column = cursor.getColumnIndex("hw");
String hw = cursor.getString(column);
Toast.makeText(this, hw, Toast.LENGTH_SHORT).show();
}
你怎么设置你的列表适配器?添加该代码 – waqaslam 2012-01-30 14:09:29
我没有一个^^如何在没有列表适配器的情况下读出这些数据? – 2012-01-30 14:13:44