欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Android selector 使用注意.

发布时间:2023/11/27 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Android selector 使用注意. 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

下面是几个是实现的效果

效果图demo 地址

selector 的作用:

selector 是选择,用来修改修改控件的背景,设置点击效果,等, 自己一般使用在点击之后改变控件的背景色以及文字的颜色,比如底部导航栏切换等, 对单个控件按下一个状态,松开之后有一个状态,就是要实现按压效果,别的没怎么用得到,

selector 的属性如下

android:state_pressed=["true" | "false"]  --是否触摸

android:state_focused=["true" | "false"]  --是否获得焦点

android:state_selected=["true" | "false"]  --是否被状态

android:state_checkable=["true" | "false"]  --是否可选

android:state_checked=["true" | "false"]  --是否选中

android:state_enabled=["true" | "false"]  --是否可用

android:state_window_focused=["true" | "false"]  --是否窗口聚焦

以上属性,如果对于单个控件,比如,一个Button ,一个Image ,一个Text 或者是一个布局, 使用的属性为: android:state_pressed 其他seleced 或者 checked 属性即使设置了也是没有效果的,

所以使用的时候要注意下选择的属性是否对,一个Image ,一个Text 或者是一个布局使用 android:state_pressed 点击之后没有效果,可以在xml 中对控制设置android:clickable="true" 这样就有效果

android:state_selected=["true" | "false"]  --是否被状态  这个是针对list 的item 是否被选中的,

android:state_checked=["true" | "false"]  --是否选中 设计多选的可以使用,比如 CheckBox和RadioButton 等,上面提到导航栏状态切换就是这个属性,

下面是一个 RadioButton 切换的代码

  <RadioGroupandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginTop="10dp"android:orientation="horizontal"><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:button="@drawable/ra_selector_bg"android:textSize="20sp"android:text="单选"/><RadioButtonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:button="@drawable/mult_selector_bg"android:textSize="20sp"android:text="双选" /></RadioGroup>
ra_selector_bg
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@drawable/single_select" android:state_checked="true" /><item android:drawable="@drawable/single_unselect" /></selector>

 

mult_selector_bg
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@drawable/mult_select" android:state_checked="true" /><item android:drawable="@drawable/mult_unselect" /></selector>

 

总结

以上是生活随笔为你收集整理的Android selector 使用注意.的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。