RecyclerViewでRippleEffectを付加

RecyclerViewのタップイベントにRippleEffectを掛けるのが意外に大変だった。 調べたところ、アイテムのレイアウトに、
android:background="?android:attr/selectableItemBackground"
を追加すればいいと書いてあることが多かったが、追加しても見えない。 RecyclerView#addOnItemTouchListenerのイベントのせいかとも思ったりしたが違う。 試行錯誤した結果、アイテムのレイアウトを、CardViewか、FrameLayoutで作成すればよかったみたい。 LinearLayoutRelativeLayoutでは上のattributeを追加しても、RippleEffectは現れない。 適当に作ったサンプルだとLinearLayoutでもRippleが現れた…… よくわからない……

コメント

タイトルとURLをコピーしました