2012-07-13 43 views
2

我的布局中有一个ImageView,用于列表中的各个项目。列表项点击触发子视图的选择器

ImageView的src是可绘制文件夹中的一个XML文件,用于定义在按项目的各种状态期间使用哪些图像。

但是,我注意到,当您单击列表行(而不是ImageView本身)时,分配给ImageView的选择器被激活。它实际上并没有击中ImageView的onClick代码,但图像像点击一样切换。

在某些情况下,这实际上是一个理想的效果,但在这种情况下并非如此。有没有办法阻止这种情况的发生?

+0

您可以发布您的代码为我们好吗? – BlackHatSamurai 2012-07-13 16:29:04

+0

完全取决于你如何实施它。也许有些代码可以帮助我们弄清楚。 – Shubhayu 2012-07-13 17:23:14

+0

除了XML之外,没有什么可以真正展示给你的...... – Andrew 2012-07-13 17:45:37

回答

0

我认为你应该阅读Cyril Mottier的博客。他有一个关于这个here的帖子。

总之,你要伸出你的孩子的意见要覆盖的方法setPressed(boolean)这样的:

@Override 
    public void setPressed(boolean pressed) { 
     if (pressed && getParent() instanceof View && ((View) getParent()).isPressed()) { 
      return; 
     } 
     super.setPressed(pressed); 
    } 
9

设置儿童android:duplicateParentStatetrue

相关问题