java - 在 Android 的 GridView 中创建可点击的图像

标签 java android android-gridview clickable-image

我在 GridView 中显示图像,如 this tutorial .我希望能够单击单个图像并执行其他事件,我需要知道单击了哪个图像。

我必须在 ImageAdapter 类中添加 imageView.onKeyDown(keyCode, event) 吗?这是当前存在的代码:

@Override
public View getView(int position, View convertView, ViewGroup parent) {
  ImageView imageView;
  if (convertView == null) {  
    // if it's not recycled, initialize some attributes
    imageView = new ImageView(mContext);
    imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
    imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
    imageView.setPadding(8, 8, 8, 8);
    //does this need imageView.onKeyDown(keyCode, event)?
  } 
  else {
    imageView = (ImageView) convertView;
  }

  imageView.setImageResource(mThumbIds[position]);
  return imageView;
}

它将如何指示点击了哪张图片?如何创建合适的处理程序?

最佳答案

对于 GridView,您可以使用 setOnItemClickListener 方法来获得 OnItemClickListener 监听器。该监听器将为您提供一个必须使用签名覆盖的方法

onItemClick(AdapterView<?> parent, View v, int position, long id)

您可以从中获取被单击的项目在网格中的位置以及网格单元格内的 View 。这是你需要的吗?

关于java - 在 Android 的 GridView 中创建可点击的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/738817/

相关文章:

java - 为什么 f :validateDoubleRange only work for @SessionScoped?

java - 如何将对象集合转换为自定义类型集合?

java - JSOUP-无法解析相对 URL

java - 如何在android java中将多个gridviews添加到一个scrollview?

带点/虚线分隔符的 Android gridview

java - Slick2D 鼠标单击在 Windows 10 中不起作用

java - 无法从 X509Certificate 的 X500Principal 获取 UniqueIdentifier

android - 在两个 Android 应用程序安装之间进行通信的最有效方法

android - 读取的AudioRecord返回奇怪的值

Android:2个不同的 View 意味着2个不同的 Activity ?