<selector    xmlns:android="http://schemas.android.com/apk/res/android">      <item android:state_pressed="false"         >           <bitmap               android:src="@drawable/back"               />      </item>      <item           android:state_pressed="true">            <bitmap                 android:src="@drawable/back_preessed"/>                  </item>      </selector>

android组件中按下按钮高亮的展示有这些情况:

1.当按钮被按下的状态时候:

一般按钮被按下,我们都是这样设置高亮的:

对selector的选项简单了解下:

android:state_selected是选中(用于RaidoButton的)

android:state_focused是获得焦点

android:state_pressed是点击

android:state_enabled是设置是否响应事件,指所有事件

关于每个<item>里面能放置什么?

常用的有这几种:

<shape ></shape>

<color></color/>
<bitamp><bitmap>

我们根据各种组件来说:

1.Button组件的话:一般的高亮展示为:

<selector xmlns:android="http://schemas.android.com/apk/res/android">        <item             android:state_pressed="false">            <shape android:shape="rectangle">                <corners                    android:radius="5dp">                 </corners>                 <gradient                      android:startColor="@color/orange_define"                     android:endColor="@color/orange_define"                     android:angle="90"/>            </shape>        </item>        <item             android:state_pressed="true">            <shape android:shape="rectangle">                 <corners                      android:radius="5dp"/>                 <gradient                      android:startColor="#b0ff4208"                     android:endColor="#b0ff4208"                     />            </shape>        </item></selector>

button点击,一般常用的高亮展示就是:shape

填充:设置填充的颜色

  <solid        android:color="@android:color/white"/><!-- 填充的颜色 -->


圆角:同时设置五个属性,则Radius属性无效

 <corners        android:radius="9dp"        android:topLeftRadius="2dp"        android:topRightRadius="2dp"        android:bottomLeftRadius="2dp"        android:bottomRightRadius="2dp"/><!-- 设置圆角半径 -->


描边:stroke:描边
android:width="2dp" 描边的宽度,android:color 描边的颜色。
我们还可以把描边弄成虚线的形式,设置方式为:
android:dashWidth="5dp"

ndroid:dashGap="3dp"
其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离。


渐变:当设置填充颜色后,无渐变效果。angle的值必须是45的倍数(包括0),仅在type="linear"有效,不然会报错。android:useLevel 这个属性不知道有什么用。

一般按钮都是按下有个透明度:(在六位的颜色码前面加入两位)默认是FF,如果半透明:7F,其实就是0-255,数值越大,透明度越小。

更多详情可以看这篇博客:http://blog.csdn.net/by317966834/article/details/8773518


2.TextView被点击如何高亮:

<selector xmlns:android="http://schemas.android.com/apk/res/android">     <item android:state_pressed="false"         android:color="@color/green_define"         ></item>     <item          android:state_pressed="true"         android:color="@color/green_define_half"         ></item></selector>
一般我们看到新浪微博那种,是如何高亮的:就是这样高亮的:

但是请注意,一定要对TextView进行按下的监听注册,XML文件才有效果。

3.ImgaeView,ImageBtton的高亮:

<selector    xmlns:android="http://schemas.android.com/apk/res/android">      <item android:state_pressed="false"         >           <bitmap               android:src="@drawable/back"               />      </item>      <item           android:state_pressed="true">            <bitmap                 android:src="@drawable/back_preessed"/>      </item>      </selector>
ImageView 或者ImageButton也是一样的,设置了监听器才能高亮。










更多相关文章

  1. Android(安卓)Studio主题设置
  2. Android横竖屏切换总结
  3. android 样式表-selector
  4. Android(安卓)ImageView 总结
  5. android TextView字体颜色根据焦点点击变化
  6. android 布局
  7. Android实现局部图片滑动指引效果
  8. android
  9. Android中创建对话框(确定取消对话框、单选对话框、多选对话框)

随机推荐

  1. 由Android想到的事情
  2. How to add a new keycode in android
  3. android:ellipsize的使用
  4. Run Android(安卓)on Your Netbook or De
  5. 由Android想到的事情
  6. 由Android想到的事情
  7. Android(安卓)之EditText InputType说明
  8. Android四大布局之线性布局及其属性
  9. Android(安卓)UI系列-----RelativeLayout
  10. Android用户界面UI组件--AdapterView及其