Java 在android ListView中获取所选项目id(从db)
我有一个列表视图,它的每一行都显示一个文本。从具有2个字段的数据库中获取的每一行: 1-id 双文本Java 在android ListView中获取所选项目id(从db),java,android,android-listview,Java,Android,Android Listview,我有一个列表视图,它的每一行都显示一个文本。从具有2个字段的数据库中获取的每一行: 1-id 双文本 现在,在我的列表中,我必须只显示我的文本,而不是id。但我需要在单击列表行时获取与其文本相关的每行id。事实上,我从db中获取文本、id对,并在单击事件中显示文本和使用id。但我怎么能做到呢?如何将id与每行关联?将id设置为listView中每个视图的标记,然后在适配器中单击“检索”按钮,设置TextView的标记 @Override public View getView(int posit
现在,在我的列表中,我必须只显示我的文本,而不是id。但我需要在单击列表行时获取与其文本相关的每行id。事实上,我从db中获取文本、id对,并在单击事件中显示文本和使用id。但我怎么能做到呢?如何将id与每行关联?将id设置为listView中每个视图的标记,然后在适配器中单击“检索”按钮,设置TextView的标记
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View listView = null;
LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if( convertView == null){
listView = inflater.inflate(R.layout.list_item, null);
}
else{
listView = convertView;
}
TextView tv = (TextView) listView.findview(R.id.textview);
tv.setText("my-text");
tv.setTag("my-id");
return listView;
}
检索id:
// Main Activity
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
TextView tv = (TextView)v.findViewById(R.id.textview);
String id = tv.getTag().toString();
}
你能给我一个简单的例子吗?
View textView=findviewbyd(R.id.textView);textView.setText(text);textView.setTag(id);setonclicklistener(listener)
在侦听器的onclick
方法中,dolong id=view.getTag()代码>