RGB :红、绿、蓝,值为0~255。
ARGB:A(透明度,Alpha),0表示完全透明,255表示完全不透明
设置颜色的属性:文字颜色(textColor) 和 背景(background)
颜色参数:
1、Color.rgb(255,0,0);
2、Color.parse("#ffffff");
下面通过一个案例来阐述如何设置颜色属性:
每点击一次按钮,背景颜色和文字颜色更改为任意相同颜色。
multi_color.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/changebg">
<!-- 改变颜色按钮 -->
<Button android:id="@+id/changeBtn"
android:layout_height="40dp"
android:layout_width="120dp"
android:layout_marginTop="300dp"
android:layout_marginLeft="30dp"
android:background="@drawable/white"
android:text="@string/chgecolor"
android:onClick="changeColor"/>
</LinearLayout>
MultiColor.java
package com.application.demo;
import java.util.Random;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
public class MultiColor extends Activity{
LinearLayout changebg;
Button changeBtn;
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.multi_color);
setMyLayout();
}
public void setMyLayout(){
changebg = (LinearLayout) findViewById(R.id.changebg);
changeBtn = (Button) findViewById(R.id.changeBtn);
}
public void changeColor(View v){
int r = new Random().nextInt(256); //返回0~255之间的任意整数
int g = new Random().nextInt(256);
int b = new Random().nextInt(256);
changebg.setBackgroundColor(Color.rgb(r,g,b)); //更改linearlayout的背景色
changeBtn.setTextColor(Color.rgb(r,g,b)); //更改btn上的文字颜色
}
}
运行截图如下: