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

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))

posted on 2016-06-16 11:12  随缘101  阅读(399)  评论(0编辑  收藏  举报