Android 中Layout布局实现点击水波纹效果

  • 内容
  • 评论
  • 相关

从Android5.0以后Button、TabLayout等控件默认都有点击水波纹效果,那像LinearLayout、RelativeLayout、TableLayout、FrameLayout、AbsoluteLayou怎么实现这种效果呢?

方式1:使用 ripple,这个API-21才有。

方式2:使用 RippleEffectmaterial-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”;

编码的魅力:就是这么简单、随意。