getItemIdAtPosition()
是android中的一个函数,用于获取列表视图中给定项目的位置的id
有什么方法可以做相反的事情,即获取项目的位置是给定其 id 的列表视图吗?
不可以,你必须手动完成。在您正在使用的适配器中创建一个公共方法;在该方法中,循环适配器项目并检查每个项目 ID。如果方法参数==,则返回索引。
public int getItemPosition(long id)
{
for (int position=0; position<mList.size(); position++)
if (mList.get(position).getId() == id)
return position;
return 0;
}
Update:如果查找性能对您的用例来说是一个问题,您不妨在适配器中保存位置/id 的 HashMap。
Update:如果您想在适配器外部使用此方法,请使用以下方法:
private int getAdapterItemPosition(long id)
{
for (int position=0; position<mListAdapter.getCount(); position++)
if (mListAdapter.get(position).getId() == id)
return position;
return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)