一、Android Color設置
1、在xml文件中
想設置顏色直接設置background的屬性或者其他的color屬性。隨便設置一個顏色如#000,再點擊左邊的顏色方塊,彈出顏色選擇器選擇顏色

2、在java代碼中
①Color.parseColor("#000");
tvShow.setBackgroundColor(Color.parseColor("#000"));
【提示】可以在布局文件中配置好顏色值,然后把用“#”表示的顏色帶到java代碼中用
②Color.BLACK 使用Color類自帶的顏色,不過都是一些基本色
tvShow.setBackgroundColor(Color.BLACK);
③定義Color資源文件,通過R.color.myColor引用
int color = R.color.myColor; tvShow.setBackgroundResource(R.color.myColor);

④Color.argb(a,r,g,b)方法:
tvShow.setBackgroundColor(Color.argb(255, 255, 0, 0));
分別是alpha、紅(red)、綠(green)、藍(blue)四個顏色值(ARGB)。每個數字取值0-255,因此一個顏色可以用一個整數來表示。為了運行效率,Android編碼時用整數Color類實例來表示顏色。
【提示】通過此方法傳入對應的透明度值,紅色值,綠色值,藍色值進行顏色配置。因此我們可以通過此方法做一個簡單的顏色配置器。
二、顏色配置器案例

1、【效果】
界面設計的比較粗糙,希望大家能學到實現效果,優化界面。
2、【項目結構】

3、【代碼】
①activity_main.xml布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:orientation="vertical"> <TextView android:text="請輸入argb值:" android:textSize="20sp" android:textColor="#000" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="10dp"/> <LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal"> <EditText android:id="@+id/etA" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" android:layout_margin="1dp" android:hint="透明度(0-255)" android:inputType="number"/> <EditText android:id="@+id/etR" android:hint="紅(0-255)" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" android:background="#f00" android:layout_margin="1dp" android:gravity="center" android:inputType="number"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal"> <EditText android:id="@+id/etG" android:hint="綠(0-255)" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" android:background="#0f0" android:layout_margin="1dp" android:gravity="center" android:inputType="number"/> <EditText android:id="@+id/etB" android:hint="藍(0-255)" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" android:background="#00f" android:layout_margin="1dp" android:gravity="center" android:inputType="number"/> </LinearLayout> <TextView android:id="@+id/tv_show" android:text="TextView" android:layout_width="200dp" android:layout_height="200dp" android:background="#000" android:layout_gravity="center" android:layout_marginTop="20dp" /> <Button android:id="@+id/btn" android:text="確定配置" android:layout_margin="20dp" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>
【提示】EditText 中hint屬性:這是設置輸入框內的提示文字。 inputType屬性:設置輸入框輸入的文本類型,此處設置為整數型
②MainActivity.java文件
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private EditText etA;
private EditText etR;
private EditText etG;
private EditText etB;
private TextView tvShow;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
etA = (EditText) findViewById(R.id.etA);
etR = (EditText) findViewById(R.id.etR);
etG = (EditText) findViewById(R.id.etG);
etB = (EditText) findViewById(R.id.etB);
tvShow = (TextView) findViewById(R.id.tv_show);
btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn:
submit();
break;
}
}
private void submit() {
// validate
if (!etA.getText().equals("")&&!etB.getText().equals("")
&&!etR.getText().equals("")&&!etG.getText().equals("")) {
//對用戶輸入的數值進行判斷是否為空。避免空字符無法轉換為int異常
int et_a = Integer.parseInt(etA.getText().toString());
int et_r = Integer.parseInt(etR.getText().toString());
int et_g = Integer.parseInt(etG.getText().toString());
int et_b = Integer.parseInt(etB.getText().toString());
tvShow.setBackgroundColor(Color.argb(et_a, et_r, et_g, et_b));
}else {
Toast.makeText(this, "輸入的值不能為空", Toast.LENGTH_SHORT).show();
}
}
}
總結
以上所述是小編給大家介紹的Android顏色配置器配置方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。