• 18 UI美化状态集合的位图selector


    • 当我们某个控件 想在不同状态下显示不同的背景图的需求

      • 如我们需要按钮在正常状态显示一种图 按下显示另一背景图
      • 或者单选框被选中时是一种显示图片 没选中是另一种背景图
    • 例子 按钮在不同状态显示不同的背景图:

      • 在工程目录下res/drawable/新建一个 selector.xml文件
      <?xml version="1.0" encoding="utf-8"?>
      <selector xmlns:android="http://schemas.android.com/apk/res/android" >
          <!-- state_pressed按下就状态ture 就显示@drawable/pressed这张图  -->
          <item android:state_pressed="true" android:drawable="@drawable/pressed"></item>
           <!-- state_pressed没有按下就是false 就显示@drawable/pressed这张图  -->
          <item android:state_pressed="false" android:drawable="@drawable/normal"></item>
      </selector>
      
      • 使用 在布局文件使用
       <Button
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" 
              android:text="按钮一"
              android:background="@drawable/my_selector_button"/>
      
    • 例子 单选框选中状态下和不非选中状态下:

      • 在工程目录下res/drawable/新建一个 selector.xml文件

        <?xml version="1.0" encoding="utf-8"?>
        <selector xmlns:android="http://schemas.android.com/apk/res/android" >
        
            <item android:state_checked="true" android:drawable="@drawable/home_active"></item>
            <item android:state_checked="false" android:drawable="@drawable/home_unactive"></item>
        </selector>
        
      • 使用 在布局文件使用

      <RadioGroup 
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:orientation="vertical"
              >
              <RadioButton 
                  android:id="@+id/rb1"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:text="男"
                  android:checked="true"
                  android:button="@null"
                  android:drawableLeft="@drawable/my_selector_radiobutton"
                  />
      
               <RadioButton 
                  android:id="@+id/rb2"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:text="女"
                  android:button="@null"
                  android:drawableLeft="@drawable/my_selector_radiobutton"
                  />
      
          </RadioGroup>
    • 例子 获取焦点 和失去焦点:

      • 在工程目录下res/drawable/新建一个 selector.xml文件
      <?xml version="1.0" encoding="utf-8"?>
      <selector xmlns:android="http://schemas.android.com/apk/res/android" >
      
          <item android:state_focused="true" android:drawable="@drawable/blue"></item>
      
          <item android:state_focused="false" android:drawable="@drawable/white"></item>
      </selector>
      
      • 使用 在布局文件使用
      <EditText
              android:id="@+id/editText1"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:ems="10" 
              android:background="@drawable/my_seletor_edittext">
      
              <requestFocus />
          </EditText>
      
          <EditText
              android:id="@+id/editText2"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:ems="10" 
              android:background="@drawable/my_seletor_edittext"/>
  • 相关阅读:
    C++的Socket的使用源码
    一些程序技术简介
    VMware安装步骤既常见问题
    操作系统和环境准备
    第一章-硬件组成
    python之面向对象
    指向方法之委托(一)
    Django之URL控制器(路由层)
    python之字符编码(四)
    python之字符编码(三)
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152234.html
Copyright © 2020-2023  润新知