您的位置:首页 > 编程语言

设置背景或颜色

2016-06-20 18:08 176 查看
在设置视图的背景或者设置字体的颜色时,总会遇到各种问题,特别是用代码来设置时,下面进行一一说明

一、设置背景颜色——单一颜色设置

设置单一颜色有两种方式:

1.定义颜色资源,然后引用资源1.定义颜色资源,然后引用资源

定义颜色资源(在res→values→colors文件中增加定义):

<resources> <color name="white">#ffffff</color>
</resources>


在xml布局文件中的设置:
android:background="@color/white"

在代码中设置:

view.setBackgroundColor(getResources().getColor(R.color.white));

2.直接使用rgb颜色

在xml布局中的设置:

android:background="#ffffff"

在代码中设置:

view.setBackgroundColor(Color.parseColor("#ffffff"));

或者

view.setBackgroundColor(Color.rgb(0xff, 0xff, 0xff));

二、设置背景颜色——根据状态的多种颜色设置

需要先将颜色定义为drawable资源,然后定义选择器的drawable资源,最后才能设置

将颜色定义为drawable资源(在res→values→colors或drawable中增加定义):

<resources>
<drawable name="red">#ff0000</drawable>
<drawable name="green">#00ff00</drawable>
</resources>

定义选择器的drawable资源(在res→drawable文件夹中增加定义的资源文件,假设资源文件的名称为selector):
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:drawable="@drawable/drawable1"/>
<item android:state_pressed="false" android:drawable="@drawable/drawable2"/>
</selector>
具体状态可根据实际情况更改。

在xml布局中设置:
android:background="@drawable/selector"

在代码中设置:

view.setBackgroundResource(R.drawable.selector);

三、设置背景图片——单一图片

将图片复制进工程,然后进行设置。

假设图片名为drawable_1

在xml布局文件中设置:

android:background="@drawable/drawable_1"

在代码中设置:

view.setBackgroundResource(R.drawable.drawable_1);

四、设置背景图片——根据状态的多张图片设置

定义选择器的图片资源,然后进行设置

定义选择器的图片资源(在res→drawable文件夹中增加定义的资源文件,假设资源文件名为btn_selector):

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/button_disabled" android:state_enabled="false" />
<item android:drawable="@drawable/button_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/button_normal"/>
</selector> 状态可根据具体情况设置
在xml中设置:

android:background="@drawable/btn_selector"

在代码中设置:

view.setBackgroundResource(R.drawable.btn_selector);

五、设置字体颜色——单一颜色

设置单一颜色有两种方式:

1.定义颜色资源,然后引用资源1.定义颜色资源,然后引用资源

定义颜色资源(在res→values→colors文件中增加定义):

<resources>
<color name="white">#ffffff</color>
</resources>


在xml布局文件中设置:
android:textColor="@color/white"

在代码中设置:

view.setTextColor(getResources().getColor(R.color.white));

2.直接使用rgb颜色

在xml布局文件中设置:

android:textColor="#ffffff"

在代码中设置:

view.setTextColor(Color.parseColor("#ffffff"));

或者

view.setTextColor(Color.rgb(0xff, 0xff, 0xff));

六、设置字体颜色——根据多种状态不同颜色的设置

需要先将颜色定义为color资源,然后定义选择器的color资源,最后才能设置

将颜色定义为color资源(在res→values→colors文件中增加定义):

<resources>
<color name="red">#ffff0000</color>
<color name="blue">#ff0000ff</color>
</resources>

定义选择器的color资源(在res→values→color文件夹中增加定义的资源文件,假设资源文件名为text_color_selector):
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:color="@color/red"/>
<item android:state_pressed="false" android:color="@color/blue"/>
</selector>

状态可根据实际情况更改。
在xml布局文件中设置:

android:textColor="@color/text_color_selector"

在代码中设置:

view.setTextColor(getResources().getColorStateList(R.color.rb_text_selector));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息