Elevation
Android5.0加入了Z轴,这个Z轴的值就是View的高度Elevation
- elevation的值较大的View会遮盖住较小的
code:
<AbsoluteLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<FrameLayout
android:layout_width="100dp"
android:layout_height="100dp"
android:background="#000"
android:elevation="10dp">
</FrameLayout>
<FrameLayout
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_x="50dp"
android:layout_y="50dp"
android:background="#CCC"
android:elevation="5dp">
</FrameLayout>
</AbsoluteLayout>
效果如下:
当然任何控件都会有默认的elevation高度:
Shadows阴影和Outline轮廓
- 轮廓outline代表图形对象的形状
- 轮廓outline决定阴影的形状
- 轮廓outline定义触摸反馈的波纹区域。
- 默认的轮廓为背景可绘制对象,即background
- shadows阴影的大小是由elevation高度决定的,高度越大,阴影面积越大
自定义轮廓为圆角矩形:
<!-- res/drawable/myrect.xml -->
<shap