Android之给控件添加水纹波效果
1 问题
给控件添加水纹波效果,点击起来像点中了,不然效果太粗糙了,没反应。
2 实现
给控件添加如下属性
android:background="?android:attr/selectableItemBackground"波纹有边界
android:background="?android:attr/selectableItemBackgroundBorderless"波纹超出边界
设置水纹波颜色
android:colorControlHighlight:
3 需要注意地方
1)在哪个控件上点击需要有效果必须设置为点击事件
所以只需要为View 设置
android:clickable="true"
或者
.setOnClickListener(null);
2)自己测试双层view包裹没效果,比如下面
<LinearLayout android:background="?android:attr/selectableItemBackground">
<LinearLayout>
<AppCompatTextView>
</AppCompatTextView>
</LinearLayout>
</LinearLayout>
3) 自己测试单层view包裹有效果,比如下面
<LinearLayout>
<LinearLayout android:background="?android:attr/selectableItemBackground">
<AppCompatTextView>
</AppCompatTextView>
</LinearLayout>
</LinearLayout>
赞 (0)