如上图开头所示,开关Switch 打开状态下选中时没有焦点,就是根本看不出当前有没有被选中,而当关闭时有一个半透明的焦点,此时可以看出当前开关是选中的。
此时可以通过 添加?android:attr/selectableItemBackground 给androidbackground ,
android:background="?android:attr/selectableItemBackground"属性
再给改siwtch 使用的them 指定高亮的颜色 :
<item name="android:colorControlHighlight">@color/material_grey_100</item>
这样选中switch时,无论它是开还是关的状态,都有选中的灰色背景。这样就能知道此时控件被选中。
但此时另一个问题来了,此时灰色圆形背景明显被切了边,看着效果奇怪,
这个问题可以通过指定android:pading 来消除切边的效果。