0

私は Etsy の Staggered Gridview ( https://github.com/maurycyw/StaggeredGridView ) を使用しようとしていますが、セレクターを上に描画しようとして問題が発生していることを除いて、ほとんど期待どおりに動作しています。

mGridView.setDrawSelectorOnTop( true ); を使用してみました。android:drawSelectorOnTop="true" をレイアウトに追加しましたが、まだ成功していません。誰かがたまたまこの問題を解決したことがありますか、または現在の状態のライブラリでは不可能かどうかを知っていますか?

4

1 に答える 1

3

Etsy's StaggeredGrid frustratingly doesn't support item selector drawables. To work around this, set the selector on the GridView item, not the GridView itself.

In my current project, I wrap the GridView item in a FrameLayout, because a FrameLayout has an android:foreground attribute:

<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 gives you the standard blue highlight. If you want, you can use your own state list drawable instead.

于 2014-05-18T18:58:59.760 に答える