我试图让它得到它所以我的listview项目被提升并显示一个投影。
这是我的列表视图项目布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent"
android:translationZ="5dp"
android:cropToPadding="false">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView4"
android:background="@color/background_white"
android:layout_alignBottom="@+id/PostUpvote"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:translationZ="2dp"
/>
这是我的ListView布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/listView"
android:layout_gravity="center_horizontal"
android:background="@color/background_white"
android:dividerHeight="10sp"
android:translationZ="2dp"/>
任何帮助都将不胜感激。
答案 0 :(得分:13)
如果您的目标是第21版,则可以使用
android:elevation="10dp"
如果没有,那么您可能需要在drawable中自己创建阴影效果。例如,这个在右侧和底侧创建投影。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Adding border layers simulating drop shadow -->
<item>
<shape>
<padding android:top="0dp" android:right="1dp" android:bottom="1dp" android:left="0dp" />
<solid android:color="#00494949" />
</shape>
</item>
<item>
<shape>
<padding android:top="0dp" android:right="1dp" android:bottom="1dp" android:left="0dp" />
<solid android:color="#10494949" />
</shape>
</item>
<item>
<shape>
<padding android:top="0dp" android:right="1dp" android:bottom="1dp" android:left="0dp" />
<solid android:color="#20494949" />
</shape>
</item>
<item>
<shape>
<padding android:top="0dp" android:right="1dp" android:bottom="1dp" android:left="0dp" />
<solid android:color="#30494949" />
</shape>
</item>
<item>
<shape>
<padding android:top="1dp" android:right="1dp" android:bottom="1dp" android:left="1dp" />
<solid android:color="#70494949" />
</shape>
</item>
<item>
<shape>
<solid android:color="@android:color/white" />
</shape>
</item>
将其保存为可绘制为my_drop_shadow.xml
,并在任意视图中使用android:background="@drawable/my_drop_shadow"
您可以通过更改填充值来调整阴影方向,并通过控制透明度来添加高程效果。