Android開發(fā)中顏色的定義方法
1、使用Color類的常量,如:
- int color = Color.BLUE; // 創(chuàng)建一個(gè)藍(lán)色 是使用Android提供的顏色
- int color = Color.RED;
- int color = Color.WHITE;
2、通過ARGB構(gòu)建,如:
- int color = Color.argb ( 127, 255, 0, 255 ); // 半透明的紫色
其中***個(gè)參數(shù)表示透明,0表示完全透明,255(ff)表示完全不透明;后三位分別代表RGB的值了。
3、使用XML資源文件來定義顏色
該方法擴(kuò)展性好,便于修改和共享,如在values目錄下創(chuàng)建一個(gè)color.xml:
- <?xml version=” 1.0” encoding=”utf -8”>
- <resources>
- <color name=”mycolor”> #7fff00ff</color>
- </resources>
定義了一個(gè)名為mycolor的顏色,在別的地方就可以通過引用mycolor來獲取該顏色值,如textView定義中:
- android:textColor= "@drawable/mycolor"
Java代碼中可以使用ResourceManager類中的getColor來獲取該顏色:
- int color = getResources().getColor(R.color.mycolor);
這與第二種方法得到的值是一樣的,getResources()方法返回當(dāng)前活動(dòng)Activity的ResourceManager類實(shí)例。
說明:XML定義方法接受6位和8位兩種表示法,而且開頭必須是#,8位定義時(shí)前兩位表示透明。
4、直接定義色值,如:
- android:textColor= "@drawable/mycolor"
這種方法必須使用0x開頭,而不是用我們常用的#。與方法3不一樣,值也必須用8位表示 ,不接受6位的顏色表示。分組一下0x|ff|ff00ff,0x是代表顏色整數(shù)的標(biāo)記,ff是表示透明度,ff00ff表示RGB顏色值。
=======================
補(bǔ)充一點(diǎn)Android布局中背景圖片的設(shè)置(編輯LinearLayout):
* 可以使用純色:android:background="@drawable/mycolor" (XML資源文件中定義的顏色)
* 也可使用圖片:android:background="@drawable/bg" (需要將一個(gè)名為bg.jpg或png的圖片拷貝到res/drawable-hdpi目錄下)