我正在尝试使用 Etsy 的交错网格视图(https://github.com/maurycyw/StaggeredGridView),并且我的工作大部分都按预期进行,除了我在尝试让选择器在顶部绘制时遇到问题。
我试过使用 mGridView.setDrawSelectorOnTop( true ); 和 android:drawSelectorOnTop="true" 在布局中,但还没有成功。任何人碰巧已经解决了这个问题,或者知道图书馆在当前状态下是否不可能?
我正在尝试使用 Etsy 的交错网格视图(https://github.com/maurycyw/StaggeredGridView),并且我的工作大部分都按预期进行,除了我在尝试让选择器在顶部绘制时遇到问题。
我试过使用 mGridView.setDrawSelectorOnTop( true ); 和 android:drawSelectorOnTop="true" 在布局中,但还没有成功。任何人碰巧已经解决了这个问题,或者知道图书馆在当前状态下是否不可能?
Etsy 的 StaggeredGrid 令人沮丧地不支持项目选择器可绘制对象。要解决此问题,请在 GridView item上设置选择器,而不是 GridView 本身。
在我当前的项目中,我将 GridView 项目包装在 a 中FrameLayout
,因为 FrameLayout 有一个android:foreground
属性:
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:foreground="?android:attr/selectableItemBackground">
<!-- Your item layout goes here. -->
</FrameLayout>
?android:attr/selectableItemBackground
为您提供标准的蓝色高光。如果需要,您可以使用自己的可绘制状态列表。