Android中的顏色表示的詳解
Android中的顏色表示
在Android中顏色用一個(gè)32位整數(shù)來(lái)表示,32位整數(shù)包含4個(gè)字節(jié),其中第一個(gè)字節(jié)代表該顏色的透明度(Alpha),0表示完全透明,0xFF表示完全不透明。第2,3,4字節(jié)分別代表該顏色在RGB顏色空間中紅色(R),綠色(G)和藍(lán)色(B)三個(gè)顏色分量的值,0代表沒(méi)有該顏色分量,0xFF代表該顏色分量達(dá)到最大。例如0xCCFF0000表示80%透明度的紅色。
XML中的顏色表示
在XML中用#加顏色值來(lái)表示一個(gè)顏色,例如#FFA1A100。如果透明度為0xFF,即完全不透明,則透明度可以省略,例如#FFA1A100可以寫成#A1A100。
代碼中的顏色表示
代碼中可以通過(guò)getColor()來(lái)獲取XML中配置好的顏色,也可以直接用一個(gè)顏色的整數(shù)值來(lái)表示該顏色。
需要注意的是,當(dāng)直接用一個(gè)顏色的整數(shù)值來(lái)表示該顏色時(shí),透明度為0xFF時(shí)不能省略,否則會(huì)認(rèn)為透明度為0,也就是完全透明,而導(dǎo)致該顏色無(wú)法顯示。
例如XML中的顏色#A1A100,在代碼中應(yīng)該寫成0xFFA1A100,而不能寫成0xA1A100。
再比如要為listView設(shè)置一個(gè)紅色的分割線,正確的寫法是
listView.setDivider(new ColorDrawable(0xFFFF0000)); listView.setDividerHeight(1);
如果寫成
listView.setDivider(new ColorDrawable(0xFF0000)); listView.setDividerHeight(1);
則看不到任何分割線,因?yàn)?xFF0000表示的是一個(gè)完全透明的顏色。
這點(diǎn)通過(guò)getColor()來(lái)獲取顏色XML中配置好的顏色時(shí)也可以看出來(lái)。
比如在xml中定義了如下的顏色
<color name="color_in_name">#A1A100</color>
在代碼中獲取該顏色
int color = getResources().getColor(R.color.color_in_name); Log.i("color value: ", String.valueOf(color));
可以看到color的實(shí)際值是-6184704,也就是0xFFA1A100,而不是0xA1A100。
如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Android?PowerManagerService?打開省電模式
這篇文章主要介紹了Android?PowerManagerService打開省電模式,文章通告省電模式的打開過(guò)程、什么是?battery?saver?sticky?模式兩部分展開詳情,感興趣的朋友可以參考一下2022-08-08android的activity跳轉(zhuǎn)到另一個(gè)activity
這篇文章主要介紹了android實(shí)現(xiàn)從一個(gè)activity跳轉(zhuǎn)到另一個(gè)activity中去2013-11-11android實(shí)現(xiàn)注冊(cè)登錄程序
這篇文章主要為大家詳細(xì)介紹了android實(shí)現(xiàn)注冊(cè)登錄程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04Android自定義view實(shí)現(xiàn)列表內(nèi)左滑刪除Item
這篇文章主要介紹了微信小程序列表中item左滑刪除功能,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-02-02Kotlin引用其他xml的view對(duì)象過(guò)程詳解
這篇文章主要介紹了Kotlin中如何引用其他xml中的view對(duì)象,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-02-02Android Studio 透明狀態(tài)欄的實(shí)現(xiàn)示例
這篇文章主要介紹了Android Studio 透明狀態(tài)欄的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04android水平循環(huán)滾動(dòng)控件使用詳解
這篇文章主要為大家詳細(xì)介紹了android水平循環(huán)滾動(dòng)控件的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12Android 數(shù)據(jù)庫(kù)SQLite 寫入SD卡的方法
如果手機(jī)沒(méi)有root,數(shù)據(jù)庫(kù)文件是無(wú)法查看到的,不方便調(diào)試。最好的辦法是把數(shù)據(jù)庫(kù)寫進(jìn)SD卡。通過(guò)本文給大家介紹Android 數(shù)據(jù)庫(kù)SQLite 寫入SD卡的方法,需要的朋友參考下吧2016-04-04