Ripple Effectとは

Ripple Effect(リップルエフェクト)は以下の様なクリック時の波紋が広がるような効果。

ripple effect

ボタンはデフォルトでこの効果がついている。

Ripple Effectが無いViewにRipple Effectをつける

Ripple Effectがデフォルトで設定されていないViewに対してRipple Effectをつけるには、 レイアウトファイルで該当要素に以下のプロパティを設定する。

  • android:background="?android:attr/selectableItemBackground"
  • android:clickable="true"

もともとクリックできる要素の場合はandroid:clickableの指定は省略してもよい。

例えば先述の以下の例では、

ripple effect

以下のようにTextViewに対してandroid:backgroundandroid:clickableを指定することで Ripple Effectをつけている。

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="TEST TEST TEST TEST"
        android:gravity="center"
        android:clickable="true"
        android:background="?android:attr/selectableItemBackground" />