• 控件设置颜色、资源等问题


    1、Drawable资源的使用:

      在xml中: android:background="@drawable/xxx"

      在java中:ImageView image = (ImageView)findViewById(R.id.xxx);

      Image.setImageResource(R.drawable.xxx);//这个资源可以是drawable-xxhdpi底下的资源图片

      也可以是drawable文件夹中的***.xml文件,比如按钮的常态,选中态的xml文件。

          如果设置图片发现设置前后两张图片重合了,

      src属性和bakground属性叠加了
      在布局文件中,把Imageview的background属性,改为src属性,就可以了
      或者你把mview.setImageResource的方法改为mview.setBackground方法

    1 <?xml version="1.0" encoding="utf-8"?>
    2 <selector xmlns:android="http://schemas.android.com/apk/res/android">
    3 
    4     <item android:drawable="@drawable/job_menu_on" android:state_enabled="true" android:state_pressed="false"/>
    5     <item android:drawable="@drawable/job_menu_off" android:state_enabled="true" android:state_pressed="true"/>
    6 
    7 </selector>


    StateListDrawable 资源文件同图片资源一样,也是放在res/drawable-xxx目录中。
    StateListDrawable 资源文件定义在XML文件中的Drawable对象,能根据状态来呈现不同的图像。

    根元素为<selector></selector>,在该元素中可以包括多个<item></item>元素。

    每个Item元素可以设置以下两个属性。
    ◆ android:color或android:drawable:用于指定颜色或者Drawable资源;
    ◆ android:state_xxx:用于指定一个特定的状态。

    android:state_active:表示是否处于激活状态,属性值为true或false
    android:state_checked:表示是否处于勾选状态,属性值为true或false
    android:state_enabled:表示是否处于可用状态,属性值为true或false
    android:state_first:表示是否处于开始状态,属性值为true或false
    android:state_focused:表示是否处于获得焦点状态,属性值为true或false,编辑框选中与否
    android:state_last:表示是否处于结束状态,属性值为true或false
    android:state_middle:表示是否处于中间状态,属性值为true或false
    android:state_pressed:表示是否处于被按下状态,属性值为true或false
    android:state_selected:表示是否处于被选择状态,属性值为true或false
    android:state_window_focused:表示窗口是否已经得到焦点状态,属性值为true或false

     

    2、

    --颜色(color)资源
    --必须以“#”开头,接下来是:A(透明度)-R-G-B 如果透明度省略了,则是不透明的。

    • 1、#RGB: #F00 红色
    • 2、#ARGB: #6F00 半透明的红色
    • 3、#RRGGBB: #0000FF 蓝色
    • 4、#AARRGGBB #6600FF00 半透明的绿色

    --定义颜色资源文件:
    <resources>
      <color name="title1">#6600ff00</color>
      <color name="title2">#60f0</color>
      <color name="title3">#0f0</color>
    </resources>

    在.java中使用方法:
    text.setTextColor(getResources().getColor(R.color.title1));

    text.setTextColor(0xffff00ff);//参数必须为8个的颜色

    text.setTextColor(android.graphics.Color.RED);//系统自带的颜色类

    在XML:android:textColor="@color/title1"

     

    3、

    --尺寸:
    <resources>
    <dimen name="title">24px</diemn>
    </resources>

    获取尺寸大小:
    text.setTextSize(getResources().getDimension(R.diemn.title))

  • 相关阅读:
    SAS 数据集生成map 文件
    尝试打开或创建物理文件 REATE FILE 遇到操作系统错误 5(拒绝访问)
    sas编程-日期相差计算函数 intnx
    msqlserver 千万级别单表数据去掉重复记录使用临时表
    bootstrap下使用模态框,在模态框内输入框中回车时,模态框自动关闭的问题及解决方法
    .net 环境下get 获取页面出现乱码问题解决
    关于富文本编辑框与纯文本编辑框初始化加载过程的问题
    SVN版本问题:svn: E155021: This client is too old to work with the working copy at
    new一个对象时,会经历哪些步骤
    var、let、const区别
  • 原文地址:https://www.cnblogs.com/kingsam/p/5590348.html
Copyright © 2020-2023  润新知