我运行了一些代码,我需要获取ListItem
索引,因此我可以将该索引传递给单独的Fragment
。它起初并没有工作,所以我设立了一个祝酒词来检查每个项目的索引是什么样的......
songView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// Getting list item index
int songIndex = songView.getSelectedItemPosition();
Toast.makeText(getActivity(), "Index number : " + " " + songIndex, Toast.LENGTH_SHORT).show();
}
});
但是对于我点击的每个项目,我总是将Index
作为-1。有解决方案吗感谢。
答案 0 :(得分:0)
方法onItemClick
传入参数int position
。您使用它而不是getSelectedItemPosition()
。所以你的更新代码如下:
songView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// Getting list item index
int songIndex = position;
Toast.makeText(getActivity(), "Index number : " + " " + songIndex, Toast.LENGTH_SHORT).show();
}
});
答案 1 :(得分:-1)
尝试:
int songIndex = position;
而不是
int songIndex = songView.getSelectedItemPosition();;