我有一个扩展BaseAdapater的2适配器。第一个适配器(我们称其为imageAdapter)根据ID加载图像,第二个适配器(pageAdapter)从第一个适配器构建图像网格。我将第二个适配器设置为一个图库。我的想法是,我可以对相册中的页面进行排序,其中每个相册上都有多张图片。
现在我想让imageViews触发点击,所以我从imageAdapter中为每个imageViews设置了一个onClickListener。问题是,在我设置了onClickListener之后,我不能再通过触摸/翻转/滚动图像来滚动图库了。我认为这是一个家长/孩子事件传递的问题..但我不确定如何准确地修复它。请帮帮忙。
发布于 2010-08-10 04:38:47
这是一个基于ListView体验的胡乱猜测(其中一个clickListener可以工作,但父onClickListener不能),但是在imageViews上设置onClickListener可能会使它失去焦点,而现在你的其他触摸事件不会注册。
尝试设置myImageView.setFocusable(false)
我假设在您将onClickListener添加到ImageViews之前,一切都像预期的那样工作。
发布于 2010-08-10 13:53:57
我通过将Gallery子类化并覆盖onDown()和onSingleTapUp()解决了这个问题。我还必须实现一个pointToChildId()方法来将运动事件转换为项目ids。=)这比我最初计划的工作多得多,但现在它起作用了,我对解决方案很满意。
https://stackoverflow.com/questions/3442455
复制相似问题