View設置陰影

一、設置陰影

在 Android 5.0 以后,可以通過 xml 或 Java代碼 的方式給 View 添加陰影
// 方式一:xml 設置

android:elevation="10dp"
// 或
android:translationZ="10dp"

// 方式二:java 代碼設置

view.setElevation(20);
// 或
view.setTranslationZ(20);

二、更改陰影顏色

在Android Material Design 系統(tǒng)中,存在兩個光源,一個是點光源, 一個是環(huán)境光,兩種光源共同作用,形成view的陰影效果。默認情況下,陰影是黑色的,然而很多時候我們想讓陰影顏色與 view 本身的顏色一致,達到更好地視覺效果。Android貼心地考慮到這一點,為我們提供了API:setOutlineAmbientShadowColor和setOutlineSpotShadowColor。開發(fā)者可以通過 xml 或 Java 代碼改變陰影的顏色

setOutlineAmbientShadowColor
翻譯:
1、當view 的Z 值或者 elevation 值為正數(shù)時,設置環(huán)境陰影顏色
2、默認陰影是黑色、不透明的,因此陰影的強度在不同顏色的不同視圖之間是一致的
3、最終環(huán)境陰影的不透明度是(陰影投射器高度、outlineAmbientShadowColor的alpha通道(通常為不透明)和R.attr.ambientShadowAlpha 主題屬性)的函數(shù)
setOutlineSpotShadowColor
1、當view 的Z 值或者 elevation 值為正數(shù)時,設置點陰影顏色
2、默認陰影是黑色、不透明的,因此陰影的強度在不同顏色的不同視圖之間是一致的
3、最終點陰影的不透明度是(陰影投射器高度、outlineAmbientShadowColor的alpha通道(通常為不透明)和R.attr.ambientShadowAlpha 主題屬性)的函數(shù)
使用方法:
// 通過xml設置
android:outlineAmbientShadowColor="#FFAAAA" // 環(huán)境陰影
android:outlineSpotShadowColor="#BAFDCE" // 點陰影

// 通過代碼設置
view.setOutlineAmbientShadowColor(mContext.getResources().getColor(R.color.ambient_shadow_color));// 環(huán)境陰影
view.setOutlineSpotShadowColor(mContext.getResources().getColor(R.color.spot_shadow_color));// 點陰影
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容