お手軽にタッチフィードバックをもった drawable リソースを構築する

  • 28
    Like
  • 0
    Comment
More than 1 year has passed since last update.

注意:この Tips は Lollipop でのみうまく動きます。

Android の標準のテーマで、以下の属性が定義されていて、OS のバージョンごとタッチフィードバックが StateListDrawable になっている。

selectableItemBackground

これを使うことで、自分で StateListDrawable を作らなくても、ある程度デフォルトの見た目のタッチフィードバックが構築できる。

例えば、以下のような LayerListDrawable を定義することで、好きな色の上にタッチフィードバックを乗せることが出来る。

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <color android:color="#232323"/>
    </item>
    <item android:drawable="?attr/selectableItemBackground"/>
</layer-list>

Lollipop の Ripple Effect が好きな色の上に乗ってくれて便利です。