2013-12-23 47 views
0

我已经填充了列表视图。这表明像如何知道列表视图中的项目是否被按下/创建列表视图项目编号

123 apple 
456 Linux 
789 windows 

我还添加onItemClick监听到它,并通过显示敬酒,我可以检查列表视图压制的ID。因为我有一个长长的约。 1000个项目,我希望如果项目1被点击,我应该得到列表视图。有些东西就像

String clicked_Item = 123 apple. 

我该怎么做。这里是我的itm监听器。

listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
@Override 
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long id) { 
Toast.makeText(getActivity(), "item clicked id="+id, Toast.LENGTH_LONG).show(); 
} 
}); 

回答

1

在您的适配器,你应该有一个名为getItem(position) 因此,在你onItemClickListener,该int arg2意味着被点击列表中的位置的方法。

listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long id) { 
     Object object = adapter.getItem(position); 
     Toast.makeText(getActivity(), "item clicked id="+id, Toast.LENGTH_LONG).show(); 
    } 
}); 

所以,这个对象可能是你的模型,这意味着这个对象有你想要的所有信息。所以,只要拿你想要的。

+0

所以如果我这样做,它会显示在特定位置的字符串/数据? –

+0

Yeap,因为arg2参数意味着在被按下的列表视图中的位置。所以,在你的适配器,你可以有这个项目特别 –

+0

谢谢工作:)并得到了我想要的。 –