我必须在列表视图中显示我的数据名称,并且不显示主键。现在当我点击时我会得到名字,但我想获得被点击的数据的主键。
public class list_view extends ListActivity{
DBAdapter db;
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
//override method onCreate that Inheritance from Activity Class
super.onCreate(savedInstanceState);
setContentView(R.layout.list_view);
db = new DBAdapter(this);
setListAdapter(new ArrayAdapter<String>(this,R.layout.row,R.id.label,db.query()));
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method
String selection = l.getItemAtPosition(position).toString();
Toast.makeText(this, selection, Toast.LENGTH_SHORT).show(); //show in toast
}
}
db.query
仅返回数据名称。
答案 0 :(得分:0)
目前无法在您的设置中完成。如果你想使用ArrayAdapter显示你的数据并返回id,你需要将这些项包装在一个实现toString()(生成显示标签)和getId()之类的类中(以获取id) )。
答案 1 :(得分:0)
您刚刚发送了您已选择查询方法的列表位置,然后查询最后使用moveToPosition()将光标移动到您想要的信息