『壹』 color 加透明度
我們可以在color文件中定義background="#XXxxxxxx"
半透明顏色值和我們平時使用的顏色不一樣,半透明顏色值共8位,前2位是透明度,後6位是顏色。
也就是透明度和顏色結合就可以寫出各種顏色的透明度.
舉個例子:
黑色全透明:#00000000
白色半透明:#80FFFFFF
黑色半透明:#80000000
黑色不透明:#FF000000
轉自:
Color設置透明度(android)_紫色的路的博客-CSDN博客_color 透明
『貳』 android 怎麼給一塊區域設置背景半透明
activity的背景透明,只需在只要在配置文件內activity屬性配置內加上android:theme="@android:style/Theme.Translucent"就好了。
但是想要多方面的設置theme的話,就要在values里設置風格先:
加透明:
先在res/values下建colors.xml文件,寫入:
<?xmlversionxmlversion="1.0"encoding="UTF-8"?>
<resources>
<colornamecolorname="transparent">#9000</color><!--透明度-->
</resources>
這個值設定了整個界面的透明度,為了看得見效果,現在設為透明度為56%(9/16)左右。
透明度可以用#9000值調,將這個值(ARGB)改變,就會有不同效果的透明度。
再在res/values/下建styles.xml,設置程序的風格
<?xmlversionxmlversion="1.0"encoding="utf-8"?>
<resources>
<stylenamestylename="Transparent">
<item name="android:windowBackground">@color/transparent</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
</style>
</resources>
加了@+android:style/Animation.Translucent這句的時候就會顯示出此activity會有動畫切換效果
最後一步,把這個styles.xml用在相應的Activity上。即在AndroidManifest.xml中的任意標簽中添加 android:theme="@style/transparent"
如果要設置所有的activity都使用這個風格,就把這句標簽語句添加在中。
『叄』 android怎樣自定義color文件
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、直接定義色值,如: int color = 0xff00ff00;
這種方法必須使用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目錄下)
『肆』 Android 圖形顯示系統(十六) 色彩(顏色)模式解析(一)
在Android Q的系統設置中,新增了色彩模式選項,盡管這項功能其他廠商可能早有應用,但依然值得探討其實現細節。Android Q提供了四種色彩模式:
框架層通過ColorDisplayManager和相關服務來管理色彩模式,定義了四種模式的對應值,如自然色、效果增強、飽和色和自動調節。設置色彩模式的操作通過setColorMode介面進行,主要通過系統設置中的DISPLAY_COLOR_MODE變數變化來觸發相應的處理。
ColorDisplayService在接收到設置變化後,會通過ContentObserver監控DISPLAY_COLOR_MODE,觸發onDisplayColorModeChanged函數,涉及夜光屏和白平衡的設置與色彩模式密切相關。色彩模式會進一步通過DisplayTransformManager的介面傳遞,通過調節飽和度和顯示顏色兩個參數來實現。
飽和度和顯示顏色分別通過mGlobalSaturationFactor和mDisplayColorSetting在SurfaceFlinger中進行控制。SurfaceFlinger會根據飽和因子生成顏色矩陣,並與屏幕顏色處理相關。使用has_wide_color_display屬性判斷屏幕是否支持顏色管理,ColorProfile負責處理屏幕顏色的狀態和功能。
選擇ColorMode時,會根據bestDataSpace、RenderIntent和屏幕支持的特性進行匹配。在添加DisplayDevice時,會初始化ColorModes,根據上下層傳入的參數進行匹配和設置。整個流程涉及了上層設置、框架層管理、以及HAL和底層驅動的具體實現。