gpt4 book ai didi

android - ListView onItemClick 只获取第一项

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:50:12 26 4
gpt4 key购买 nike

我正在尝试获取所选项目的文本并将其显示在 toast 消息中。这是我写的代码:

final ListView lv = (ListView)findViewById(R.id.firstflightlist);
lv.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
TextView c = (TextView) arg0.findViewById(arg1.getId());

String text = c.getText().toString();
Toast.makeText(getApplicationContext(), text, Toast.LENGTH_SHORT).show();
}});

ListView 是单选 ListView 。当我单击列表中的任何项目时,它总是显示列表的第一项。这可能是什么原因造成的?如何获取所选项目的文本?

最佳答案

您不需要 findViewById,您已经获得了您点击的 View 。也 findViewById 只找到第一个匹配 id 的项目,在 ListView 中你有很多具有相同 id 的项目,所以它找到第一个

 lv.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {


TextView c = (TextView) arg1; //<--this one
String text = c.getText().toString();
Toast.makeText(getApplicationContext(), text, Toast.LENGTH_SHORT).show();
}});

关于android - ListView onItemClick 只获取第一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17010870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com