`
fly_宇光十色
  • 浏览: 64673 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android selector设置详解

阅读更多

Android 中的selector常用来设置背景,可以很方便的根据checked,selected等不同状态设置不同背景,不需要自己在Java代码设置了,简单,优雅!

相信selector设置背景色大家都很熟悉了,这里介绍两个最近总结的一些技巧。

  1. 背景色和文字颜色的设置

       类似微信的底部导航,点击不同的底部按钮,会显示选中的图片,同时文字也会变色,背景图片用selector很容易实现了,那么文字呢 ?需要自己用代码去设置吗?NO!文字也可以用selector来实现!

在res/color文件夹下,设置tab_color_seletor文件,具体内容为:

 

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

  <!-- 单击选中时字体颜色-->
 <item android:state_pressed="true" android:color="@color/white" />
  <!-- 滚动选中时字体颜色-->
 <item android:state_checked="true" android:color="@color/white" />
  <!-- 默认字体颜色-->
 <item android:color="@color/black" />
</selector>

 这样设置导航的TextView的textColor为 tab_color_seletor 即可实现上述想要实现的效果

 

  2. 只设置背景的底部边框



 想要达到这种效果,点击不同tab标签时,对应的底部出现蓝色横线,怎么实现?

这里就要借助layer-list了。
这里在选中的时候,layer-list先是设置整个背景为蓝色,然后又覆盖了一层白色,但是底部留了2dp的距离,这样就把蓝色显示出来了
具体代码如下:
<selector xmlns:android="http://schemas.android.com/apk/res/android">

   <item android:state_checked="true">
      <layer-list>        
         <item>
            <shape>
               <solid android:color="@color/blue" />
            </shape>
         </item>
         <!-- This is the line  note:这里的bottom相当于margin_bottom-->
         <item android:bottom="2dp">
            <shape>
               <solid android:color="#FFFFFF" />
            </shape>
         </item>

      </layer-list>
   </item>
    <item android:drawable="@color/white"/>

</selector>
 

  • 大小: 3.4 KB
5
3
分享到:
评论

相关推荐

    Android selector背景选择器的使用详解

    6. `android:state_enabled="true/false"`:控制组件是否可以响应事件,`true`表示可以,`false`表示不可以,但这个状态通常不在Selector中直接设置,而是在布局文件或代码中控制组件的enabled属性。 使用Selector...

    Android selector的实例详解

    Android中的Selector是Android图形系统中一个非常重要的组件,它允许我们根据View的不同状态来显示不同的图像或颜色。Selector主要用于创建动态的、具有多种状态的图形,如按钮、列表项等的背景。以下是对Android ...

    Android中的Selector的用法详解及实例

    Android中的Selector的用法详解及实例 Android中的Selector是一种强大的工具,可以根据不同的状态来改变控件的背景图片或文字颜色。Selector的用法非常灵活,开发者可以根据需要来设置不同的状态和对应的图片或颜色...

    Android ImageView的selector效果实例详解

    主要介绍了Android ImageView的selector效果实例详解的相关资料,需要的朋友可以参考下

    Android selector状态选择器的使用详解

    Android selector状态选择器的使用详解 Android selector状态选择器是Android应用程序中常用的UI组件,它可以根据不同的状态来改变控件的外观和行为。例如,在一个按钮控件中,selector可以根据按钮的状态(如点击...

    实例详解Android Selector和Shape的用法

    shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。 1:Selector ...

    android-selector-intellij-plugin.rar

    《Android Selector IntelliJ 插件详解》 Android开发中,选择器(Selector)是不可或缺的一部分,它主要用于定义不同状态下的UI表现。IntelliJ IDEA作为一款强大的Android开发集成环境,提供了丰富的插件支持,以...

    Android 5.X 新特性详解(四)——Material Design 动画效果

    Ripple动画的实现主要依赖于`android:background`属性中的`selector`和`ripple`资源。`selector`允许我们定义不同状态下的背景,如默认状态和按下状态。`ripple`则用于创建触摸时的涟漪效果。在XML布局文件中,我们...

    Android 使用selector改变按钮状态实例详解

    在布局文件中,我们可以通过设置`android:background`属性来使用Selector: ```xml android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="点击我" android:background="@...

    Android shape和selector 结合使用实例代码

    Selector详解** Selector是Android中用于实现状态选择器的XML元素,它可以依据控件的状态(如按下、聚焦、选中等)动态改变背景图片或颜色。Selector同样位于res/drawable目录下,然后作为控件的背景引用。 以下...

    android自定义Switch控件详解

    例如,创建`my_thumb.xml`和`my_track.xml`,然后使用`&lt;selector&gt;`标签来定义不同状态下的Drawable,如按下、未按下等。 3. **自定义颜色和背景**: 在XML资源中,我们可以设置滑块和轨道的颜色。例如,我们可以用...

    selector_radio_button_demo

    在Android开发中,`Selector`和`RadioButton`是两个非常重要的组件,它们在构建用户界面时发挥着关键作用。`Selector`是Android的一种资源类型,主要用于定义视图在不同状态下的外观,比如按下、默认、选中等状态。...

    Android中XML属性与解析

    绝对布局允许开发者精确地设置控件在屏幕上的位置,通过`android:layout_x`和`android:layout_y`属性指定控件的坐标。尽管这种布局方式提供了极大的自由度,但在响应式设计中并不推荐使用,因为它不易于适应不同尺寸...

    android shape

    Android Shape 使用详解 Android 中的 Shape 是一个非常重要的概念,它用于定义控件的显示属性,如颜色、渐变、描边、圆角、间隔等。今天,我们将详细地介绍 Shape 的使用方法和相关知识点。 首先,看下面的代码:...

Global site tag (gtag.js) - Google Analytics