使用Android陰影屬性踩到的那些坑

2021-08-24 20:42:46 字數 878 閱讀 1755

使用android陰影屬性踩到的那些坑……

在做專案的時候,對於fragment中乙個圓角按鈕設定陰影效果時連跌好幾次,特此記錄。

陰影不生效

原本乙個普普通通的陰影效果,只需要在xml檔案中設定屬性android:elevation=」10dp」即可,可以通過設定這個大小來改變陰影的效果。這個屬性大概是設的控制項的高度,把控制項抬起來就可以看到效果。

如果你發現根本不起作用,那可能是因為

缺少乙個背景控制項去承接這個控制項的投影,所以陰影看不出來。那解決自然就是在這個陰影下面再襯上乙個布局,但注意,這個布局必須要大於控制項,不可以設成wrap_content,如果布局和控制項一樣大,它怎麼承接控制項投下來的陰影。

這個控制項的背景是透明的。由於我們在適配多解析度螢幕的時候喜歡用布局去套住諸多控制項以防止多解析度情況下控制項錯位。而如果你不小心設定的elevation屬性是設給這個布局的,那就有可能在你看來這塊東西明明是有東西的,但是什麼陰影都看不到。這個問題就在我做tips的時候遇到的。

陰影不隨控制項形狀

當你使用了自定義的控制項形狀,例如圓角按鈕,卻發現明明按鈕是圓角的,但還是在四個角出現了一點陰影效果,不要懷疑是系統的問題,有可能是圓角控制項所在的布局為wrap_content,布局正好框住了控制項,留出了四個角。由於陰影呈現也需要控制項,這就導致別的地方沒有出現陰影,而正好缺了的四個角有位置承接陰影。造成了圓角控制項陰影效果失效的假象。

順便說一句,在布局xml檔案的時候,android studio的預覽效果確實有時候合適有時候不合適,一設定完elevation後就可以看到陰影,那在手機上也能看到,如果看不到那就再去排除布局的問題吧。如果設定完elevation看不到陰影,那手機上也不會看到。

(可能是我比較菜,普通的布局居然能讓我玩出這麼多坑來,折騰了我一天,以上的問題全都被我遇到了,開心~)

android 文字陰影

關於android文字陰影,共有四個屬性可以設定 android shadowcolor 陰影顏色 android shadowdx 陰影x方向位移 android shadowdy 陰影y方向位移 android shadowradius 陰影的半徑 注意 陰影的半徑必須設,為0時沒有效果。下面為...

CSS3 box shadow陰影屬性使用

語法 box shadow 投影方式 水平偏移量 垂直偏移量 陰影模糊半徑 陰影擴充套件半徑 陰影顏色 定義 給元素新增周邊的陰影效果 引數 預設值定義 陰影型別 outset 可選值 inset 選擇投影方式為 外投影還是內投影 水平偏移量 正 陰影在元素的右邊 負 陰影在元素的左邊 陰影水平偏移...

android文字陰影效果

關於android文字陰影,共有四個屬性可以設定 android shadowcolor 陰影顏色 android shadowdx 陰影x方向位移 android shadowdy 陰影y方向位移 android shadowradius 陰影的半徑 注意 陰影的半徑必須設,為0時沒有效果。下面為...