【问题标题】:GridView's child cannot be set "UnClickable"GridView 的子不能设置为“不可点击”
【发布时间】:2014-07-10 11:47:08
【问题描述】:

我有一个包含 16 个孩子的 gridView(imageView,4x4)。我有 gridView 的 setOnItemClickListener。我想要的是:当用户单击imageView时,它的图像消失了(我通过“setImageResource(android.R.color.transparent)”完成它)并且无法再次单击它。

我尝试过 imageView.setClickable(false)、gridView.getChildAt(position).setClickable(false),但它们都不起作用。我仍然可以单击包含 imageView 的原始框。

我确实尝试了另一种方法,即 imageView.setImageBitmap(null),它确实使它成为“不可点击”。然而,当第一行中的所有 imageView 消失时,第二行只是替换第一行,将整个 gridView 向上移动一行,这不是我想要的。我希望他们留在他们的位置上。

感谢任何帮助。提前致谢。

以下是使用ImageView.setImageBitmap(null)方法时的截图。

之前:

同时:

之后:

【问题讨论】:

  • 你尝试 setVisible 了吗?
  • 我试过了。但它仍然不符合我的方式。通过设置 View.INVISIBLE,我仍然可以点击它。通过设置View.GONE,效果和设置ImageView.setImageBitmap(null)一样。感谢您的建议顺便说一句
  • 然后您可以检查处理程序是否可见。如果不是做别的事情。
  • 但问题是我无法使图像无法点击,即使在我检查图像不可见之后也是如此。这很烦人。
  • 谢谢,这是解决方案。谢谢你的帮助。 :)

标签: android gridview clickable


【解决方案1】:

然后您可以做的是通过 setOnItemClickListener(null) 删除单击处理程序。我总是使用它,因为它总是对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-30
    • 1970-01-01
    相关资源
    最近更新 更多