安卓:如何在列表视图中的吐司上显示项目 ID?



我想在单击特定行后从列表视图中获取项目 ID。

listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
String UserInfo = listView.getItemAtPosition(i).toString();
Toast.makeText(getActivity(), UserInfo, Toast.LENGTH_SHORT).show();
return false;
}
});

如果您使用自定义适配器(循环模型(创建列表项,则可以获得如下所示的ID。 请粘贴更多代码以获得我们的想法。

UserInfo userInfo = (UserInfo) adapterView.getItemAtPosition(position);
Toast.makeText(getActivity(), userInfo.getId(), Toast.LENGTH_SHORT).show();
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
ModelClass ref = (ModelClass) listview.getItemAtPosition(i);
Toast.makeText(getActivity(), ref.getid, Toast.LENGTH_SHORT).show();
return false;
}
});

根据您的模型类,将模型类替换为模型类名称和 getid。

你需要一个"USERS"类,其中你应该有一个名为"id"的部分

class USERS{
String UserInfo;
int Userid;
}

当您从数据库中获取数据时,您必须将数据库中的 ID 初始化为 USERS 类实例

完成此操作后,您可以在Onclick方法中获取ID:

USERS User=userArraylist.getItemAtPosition(i);  //here you get the data from your instance  
int id=User.Userid

Toast.makeText(getApplicationContext(), id, Toast.LENGTH_SHORT).show();

如果你只是想要这个职位,那么 很容易:

Toast.makeText(getApplicationContext(), "User Id: "+i, Toast.LENGTH_SHORT).show();

最新更新