将onClickListener添加到listview项目

我有一个缩略图和文本列表视图彼此相邻。 我试图找出如何为每个列表项添加onClicklistner,以便当用户选择文本或缩略图时,将弹出完整的图像。 下面是我的列表对象和适配器以及lazyAdapter代码。

主要活动:

list=(ListView)findViewById(R.id.list); adapter=new LazyAdapter(this, mStrings, mImages); list.setAdapter(adapter); 

LazyAdapter:

  public View getView(int position, View convertView, ViewGroup parent) { View vi=convertView; if(convertView==null) vi = inflater.inflate(R.layout.item, null); TextView text=(TextView)vi.findViewById(R.id.text);; ImageView image=(ImageView)vi.findViewById(R.id.image); text.setText(image_name[position]); imageLoader.DisplayImage(data[position], activity, image); return vi; } 

编辑这是我最终使用的。

  list.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3){ Toast.makeText(MainActivity.this, "Show Full Image", Toast.LENGTH_LONG).show(); } }); 

您可以在mImages中使用mStringsOnItemClickListener 。 从您的LazyAdapter假设它们是数组。 也许你可以尝试这样的事情。

 list.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView parent, View v, int position, long id) { String text = mStrings[position]; YourImageClass img = mImages[position]; Intent i = new Intent(MainActivity.this, ShowFullImageActivity.class); i.putExtra("TEXT", text); i.putExtra("IMAGE", img); // <-- Assumed you image is Parcelable startActivity(i); } } 

有什么可以帮助您实现AdapterView.OnItemClickListener

更多信息可以在http://developer.android.com/guide/topics/ui/binding.html找到。

请注意,这用于ListView中的每一行,而不是每行中的单独TextView或ImageView。