从Android5.0以后Button、TabLayout等控件默认都有点击水波纹效果,那像LinearLayout、RelativeLayout、TableLayout、FrameLayout、AbsoluteLayou怎么实现这种效果呢?
方式1:使用 ripple,这个API-21才有。
方式2:使用 RippleEffect或material-ripple,都是第三方优秀方案。
方式3:android:background="?attr/selectableItemBackground",简单、简洁。
我提倡使用方式3,不过使用的过程中需要注意一些问题:
1)、设置下面属性android:clickable="true" android:focusable="true";
2)、Layout实现View.OnClickListener();
3)、API 7+ (Android + AppCompat Support Library):实现方式是:android:background="?attr/selectableItemBackground";
4)、API 11+ (Pure Android):实现方式是:android:background="android:attr/selectableItemBackground";
编码的魅力:就是这么简单、随意。
文章评论