如何在列表视图中单击元素 (Android)

how to get the element clicked in the listview (Android)

该行最后看起来像这样:

如何确定图片 (worldicon) 是否被点击?

我开始在 onItemClick 方法中尝试这个,但我没有头绪:

lvResults.setOnItemClickListener(new OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> adapter, View v, int position, long id) {
    }

});

有人可以帮忙吗?

如果你想给世界图标添加onclick监听器。在自定义适配器本身中,您需要将 onclick 侦听器添加到世界图标的图像视图。你可以给 imageview id 或 tag 来识别点击了哪个世界图标。

getView() 方法中的自定义适配器中,使用 Holder 并将 onClickLister 设置为您的 ImageView。试试下面的代码:

 public class Holder
{
    ImageView world;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    final Holder holder=new Holder();
    View rowView;       
         rowView = inflater.inflate(R.layout.single_row, null);
         holder.world = (ImageView) rowView.findViewById(R.id.world_icon); 

     holder.world.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
              // do your onClick action here
        }
     });       

    return rowView;
}

希望对您有所帮助。

将 onclick 侦听器添加到阵列适配器中的图像视图。 itemview 点击侦听器无法识别项目中的每个单独元素。

public View getView(final int position, View convertView, ViewGroup parent) {
        ViewHolder holder = new ViewHolder();

            convertView = layoutInflater.inflate(layout.your_layout,null);
            holder.worldImage = (ImageView) convertView.findViewById(id.world_image);
holder.worldImage.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
            // perform necessary action
            }
        });