日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android elevation 白色,Android Elevation

發布時間:2023/12/4 Android 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android elevation 白色,Android Elevation 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介:

在Android API21,新添加了一個屬性:android:elevation,用以在xml定義View的深度(高度),也即z方向的值。

除了elevation之外,類似于已有的translationX、translationY,也相對應地新增了一個translationZ,用以在屬性動畫中動態改變Z值(使用View.setTranslationZ())

Z = elevation + translationZ

在引入了這個屬性之后,主要影響有兩個:

影響View的陰影

影響View相互阻擋順序

1. 影響View的陰影

Z值會對View的陰影外觀造成影響,但是不是對View大小造成影響。

擁有更大Z值的View會有一個更大但是更柔和的陰影——這跟我們生活的實際體驗是一致的,官方給的效果圖:

陰影效果圖

2. 影響View相互阻擋順序

擁有更大Z值的View會擋住Z值比較小的View——即更大Z值的View會在最上層。

譬如,在正常的FrameLayout中,子View的繪制順序是從上到下,也就是說,最后一個子View會顯示到最上面,如果位置跟前面的View有重合,則會蓋住前面的View。

android:orientation="vertical"

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/viewA"

android:background="#f00"

android:text="A"

android:gravity="center"

android:layout_width="100dp"

android:layout_height="100dp" />

android:id="@+id/viewB"

android:background="#0f0"

android:text="B"

android:gravity="center"

android:layout_marginLeft="60dp"

android:layout_marginTop="60dp"

android:layout_width="100dp"

android:layout_height="100dp" />

android:id="@+id/viewC"

android:layout_marginLeft="180dp"

android:background="#f00"

android:text="C"

android:gravity="center"

android:elevation="1dp"

android:layout_width="100dp"

android:layout_height="100dp" />

android:id="@+id/viewD"

android:background="#0f0"

android:text="D"

android:gravity="center"

android:layout_marginLeft="240dp"

android:layout_marginTop="60dp"

android:layout_width="100dp"

android:layout_height="100dp" />

比如,上面的xml代碼,效果如下圖所示:

image.png

先看ViewA、ViewB,因為ViewB是第二個子View,ViewA是第一個,所以B會覆蓋在A的上面。

然后ViewC、D,跟AB相比較,區別就在于ViewC多了一個elevation屬性,有了一個比ViewD更大的Z值,所以,即使它在ViewD的前面,但是依然能夠蓋住D~

注意 設置Elevation 屬性失效的情況:

1. 控件必須設置背景色,且不能為透明。

2. 陰影是繪制于父控件上的,所以控件與父控件的邊界之間需有足夠空間繪制出陰影才行。

3. 有網友提出圖片盡量使用.png, 防止圖片過大導致oom或者elevation失效

4. 經過本人測試,除了上述原因外,還有:background是圖片時、background直接設置具體顏色值時容易無效如:#ffaacc,background是shape時效果最好

5.設置elevation的View最好是ViewGroup子類

總結

以上是生活随笔為你收集整理的android elevation 白色,Android Elevation的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。