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