android 5.0的视图阴影主要是体验出层次性,就是在一个物体上面叠加上一层的设计,而这种设计就是除了传统的,x,y的纸面层,还有就是透过纸面的z轴的层次设计。
elevation:
高度,静态属性;在代码中使用 View.setElevation 方法去定义
TranslationZ:
Z轴相对于高度的位置,用于实现动画的动态属性。设置视图的translation,在代码可以使用View.setTranslationZ方法
新的ViewPropertyAnimator.z和ViewPropertyAnimator.translationZ方法可以设置视图的elevation值
Z = elevation+TranslationZ;
布局文件中使用:
<View
android:id="@+id/floating_shape"
android:layout_width="160dp"
android:layout_height="160dp"
android:layout_marginRight="40dp"
android:background="@drawable/shape"
android:elevation="50dp"
android:layout_gravity="center"/>
官方使用代码设置高度:
int action = motionEvent.getActionMasked();
/* Raise view on ACTION_DOWN and lower it on ACTION_UP. */
switch (action) {
case MotionEvent.ACTION_DOWN:
Log.d(TAG, "ACTION_DOWN on view.");
view.setTranslationZ();
break;
case MotionEvent.ACTION_UP:
Log.d(TAG, "ACTION_UP on view.");
view.setTranslationZ();
break;
default:
return false;
}