Android顏色配置器配置方法
一、Android Color設(shè)置
1、在xml文件中
想設(shè)置顏色直接設(shè)置background的屬性或者其他的color屬性。隨便設(shè)置一個顏色如#000,再點擊左邊的顏色方塊,彈出顏色選擇器選擇顏色
2、在java代碼中
①Color.parseColor("#000");
tvShow.setBackgroundColor(Color.parseColor("#000"));
【提示】可以在布局文件中配置好顏色值,然后把用“#”表示的顏色帶到j(luò)ava代碼中用
②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)。每個數(shù)字取值0-255,因此一個顏色可以用一個整數(shù)來表示。為了運行效率,Android編碼時用整數(shù)Color類實例來表示顏色。
【提示】通過此方法傳入對應(yīng)的透明度值,紅色值,綠色值,藍色值進行顏色配置。因此我們可以通過此方法做一個簡單的顏色配置器。
二、顏色配置器案例
1、【效果】
界面設(shè)計的比較粗糙,希望大家能學(xué)到實現(xiàn)效果,優(yōu)化界面。
2、【項目結(jié)構(gòu)】
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屬性:這是設(shè)置輸入框內(nèi)的提示文字。 inputType屬性:設(shè)置輸入框輸入的文本類型,此處設(shè)置為整數(shù)型
②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("")) { //對用戶輸入的數(shù)值進行判斷是否為空。避免空字符無法轉(zhuǎn)換為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(); } } }
總結(jié)
以上所述是小編給大家介紹的Android顏色配置器配置方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Android中封裝RecyclerView實現(xiàn)添加頭部和底部示例代碼
這篇文章主要給大家介紹了關(guān)于Android中封裝RecyclerView實現(xiàn)添加頭部和底部的相關(guān)資料,網(wǎng)上這方面的資料很多,但都不是自己需要的,索性自己寫一個分享出來供大家參考學(xué)習(xí),需要的朋友們下面隨著小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-08-08Android多設(shè)備多module打包fat-aar(最新推薦)
這篇文章主要介紹了Android多設(shè)備多module打包(fat-aar),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03Android開發(fā)應(yīng)用中Broadcast Receiver組件詳解
本篇文章主要介紹了Android開發(fā)應(yīng)用中Broadcast Receiver組件詳解,想要學(xué)習(xí)的同學(xué)可以了解一下。2016-11-11Android Viewpager實現(xiàn)無限循環(huán)輪播圖
這篇文章主要為大家詳細(xì)介紹了Android Viewpager實現(xiàn)無限循環(huán)輪播圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-11-11Android編程實現(xiàn)webview將網(wǎng)頁打包成apk的方法
這篇文章主要介紹了Android編程實現(xiàn)webview將網(wǎng)頁打包成apk的方法,以打包HTML5為例分析了webview打包apk的相關(guān)方法、屬性與事件操作技巧,需要的朋友可以參考下2017-08-08OpenHarmony如何調(diào)用電話服務(wù)API撥打電話
OpenHarmony3.1版本標(biāo)準(zhǔn)系統(tǒng)增加了通話相關(guān)的聯(lián)系人應(yīng)用,來電應(yīng)用等,在系統(tǒng)服務(wù)層面電話相關(guān)功能也比較完善,這篇文章主要介紹了OpenHarmony如何調(diào)用電話服務(wù)API撥打電話2022-11-11