我无法在子活动中显示阴影效果,就像父活动一样。
在使用CustomView的父级活动中 在Child协调器布局中使用。
请帮我解决这个问题。
由于
答案 0 :(得分:0)
在工具栏或appbar下方或要显示阴影的位置添加此视图。
<View
android:id="@+id/shadow_layout"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@drawable/toolbar_dropshadow" />
------- toolbar_dropshadow.xml ------
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient
android:startColor="@android:color/transparent"
android:endColor="#88333333"
android:angle="90"/>
</shape>
答案 1 :(得分:0)
如果您的定位Android 5.0及更高版本或前棒棒糖执行以下操作,请将android:elevation
设置为Toolbar
。
<强> Toolbar.xml 强>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="@dimen/toolbar_height"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
<View
android:id="@+id/shadow"
android:layout_width="match_parent"
android:layout_height="4dp"
android:background="@drawable/shadow" />
</LinearLayout>
<强> shadow.xml 强>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="@color/no_color"
android:endColor="@color/shadow_normal"
android:angle="90" />
</shape>
<强> color.xml 强>
<color name="shadow_normal">#55000000</color>
<color name="no_color">#00000000</color>
答案 2 :(得分:0)
你可以简单地使用提升属性android:elevation
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="8dp"
android:minHeight="?attr/actionBarSize"
android:background="@color/colorPrimary"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
</android.support.v7.widget.Toolbar>
if(Build.VERSION.SDK_INT&lt; 21),在工具栏下方的framelayout中使用带阴影背景的视图
例如,如下所示
<include
android:id="@+id/my_action_bar"
layout="@layout/toolbar" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- activity content here.... -->
<View
android:id="@+id/view_toolbar_shadow"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@drawable/toolbar_shadow" />
</FrameLayout>
在活动代码中,如果sdk版本&gt; = 21
,则可以隐藏阴影视图View mToolbarShadow = findViewById(R.id.view_toolbar_shadow);
if (Build.VERSION.SDK_INT >= 21) {
mToolbarShadow.setVisibility(View.GONE);
}