如何使用AppCompat.Light.NoActionBar删除操作栏下面的阴影?
我试图用Theme.AppCompat.Light.NoActionBar删除工具栏下面的阴影,使用曾经回答过的人的每一个build议,但没有人工作。 我试过了
<item name="android:windowContentOverlay">@null</item>
和
<item name="android:windowContentOverlay">@drawable/solid_line</item> .... <shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"> <solid android:color="@color/accueil_color" /> <size android:height="15dp" /> </shape>
与此同时,
android:elevation="0dp"
阴影从屏幕的顶端而不是消失。
你有任何想法完全删除这个阴影线?
我不是专家,但几个小时前我遇到了同样的问题。 所以这里的想法是,与AppCompat
我们必须pipe理库属性,而不是Android属性。 换句话说,而不是android:海拔尝试应用程序:海拔:
<android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" android:fitsSystemWindows="true" app:elevation="0dp"> <android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> </android.support.design.widget.AppBarLayout>
编辑:
我只是尝试另一个选项没有AppBarLayout
。 这种方式对我来说非常好,阴影完全消失了。 所以我怀疑问题是在你的其他观点。 我不认为这是你的ToolBar
投下阴影。
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="?attr/actionBarSize" app:elevation="0dp" />
使用app:elevation="0dp" instead of android:elevation
我有同样的问题。 在android.support.design.widget.AppBarLayout
上应用app:elevation="0dp"
解决了这个问题
在AppBarLayout中添加app:elevation="0dp"
,阴影将被隐藏。
我有同样的问题。
如果你的工具栏是在android.support.design.widget.AppBarLayout
里面在android.support.design.widget.AppBarLayout
添加应用:elevation =“0dp”将解决你的问题。
否则在Toolbar
上添加app:elevation="0dp"
。
<android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" android:fitsSystemWindows="true" app:elevation="0dp"> <android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
希望能帮助到你 :)
刚才使用super.onCreate(savedInstanceState);
if(getSupportActionBar() != null) { getSupportActionBar().setElevation(0); }
@DmitryO哼我的XML是这样的,我没有android.support.design.widget.AppBarLayout
,只是工具栏小部件,
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:fab="http://schemas.android.com/apk/res-auto" xmlns:materialdesign="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" android:theme="@style/AppThemeAccueil"> <View xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="@dimen/statusBarHeight" android:background="@color/accueil_colorDark" android:elevation="@dimen/statusBarElevation"/> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" android:popupTheme="@style/AppThemeAccueilToolbar" android:theme="@style/AppThemeAccueilToolbar" android:id="@+id/toolbarAccueil" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="?attr/actionBarSize" materialdesign:elevation="0dp" android:elevation="0dp" android:outlineProvider="background" android:layout_marginTop="@dimen/appBarTopMargin" > </android.support.v7.widget.Toolbar> </RelativeLayout>
我有这个吗? (我认为这不会改变结果)
只需将您的AppBarLayout
放置在分离的XML文件的LinearLayout
,然后将此XML包含到您的主XML中。