当前位置: 首页 > 面试题库 >

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

岳正浩
2023-03-14
问题内容

如本教程所述,我在GridView中显示了图像。我希望能够单击单个图像并执行其他事件,所以我需要知道单击了哪个图像。

我必须在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)

您可以在其中获得项目在被单击的网格中的位置以及在网格单元格内的视图的位置。那是你需要的吗?



 类似资料:
  • 我正在设计一个Gridview,其中每个项目都有一个TextView和ImageView。我试图找到关于如何使ImageView可点击以及GridView项目本身(两者都会触发不同的方法())的教程(逐步更新和清晰的教程)。 这就是我目前掌握的: Activity.java GV适配器.java 结果: 当Item1(Textview)被点击时,它应该点击整个Item并触发GridView的OnI

  • 问题内容: 我想使列表视图中的所有列表项都打开到一个新页面中,因此每个列表视图项都打开到一个我可以使用的新黑色页面上。我根本不知道该如何实现。我已经连续搜索了几个小时,找不到解决方案的答案。如果有人可以显示和/或解释如何执行此操作而不是提供链接,将不胜感激,但是两者之一都很有帮助。 到目前为止,这是我的代码: 这是在我的string.xml中 这是在我的activity_main.xml中。 我应

  • 现在我的问题是如何使这个图像(在网格已经被强加)可点击。 [换句话说,应用网格后图像的各个子部分必须成为可点击的按钮]。

  • 本文向大家介绍如何在HTML图片中创建可点击区域?,包括了如何在HTML图片中创建可点击区域?的使用技巧和注意事项,需要的朋友参考一下 要在图像中创建可点击区域,请创建带有可点击区域的图像映射。例如,在单击框时,将打开另一个网站,在单击同一图像中的三角形时,将打开另一个网站。 <area>标记定义图像内的区域,并嵌套在<map>标记内。以下是属性: 序号 属性和说明 1 alt 该区域的备用文字

  • 我正在开发一个记忆板游戏。规则如下:首先,牌面朝下。当用户单击第一张卡时,它会翻转,当用户单击第二张卡时,它也会翻转,此时这两张卡会相互比较。如果它们是一样的,它们就被从棋盘上取下,如果不是的话,它们将再次面对下。 我有一个GridView和实现翻转和比较的卡片在"onItemclick",但我没有得到预期的结果,因为比较结果总是掩盖第二张卡片的翻转。 例如,如果这两张卡是匹配的,则在用户有机会查

  • 我想以编程方式创建3x3网格视图以显示图像。我想通过获取屏幕尺寸来设置每个项目的高度和宽度。像: 然后每个项目 请有人帮助我或一些参考链接。