我的应用程序中有一个列表视图,其中的图像几乎涵盖了所有视图。谷歌有一篇文章,他们解释如果项目的背景不可见,应该在项目的顶部绘制选择器,否则你不会看到选择突出显示。无法再找到这篇文章了。
列表视图已使用drawSelectorOnTop和各种状态的选择器正确配置。列表视图中的每个项目都是RelativeLayout,其背景选择器适用于各种状态,包括激活。选择多个项目并将其标记为已选中时,项目会被正确标记,但由于大图像几乎覆盖了所有视图,因此只有一小部分背景以突出显示的颜色显示。
我通过将相对布局包装到框架布局中并设置前景可绘制来绘制高光来解决我的问题。它有效,但我不想在我的元素上添加额外的布局。
理想情况下,listview的选择器应该用于标记项目,但显然不是。我在列表视图选择器中包含了所有可能的状态,但它永远不会使项目突出显示。
我的问题是:将框架中的项目包装在正确的方法中,还是有更好的方法?