android 删除操作栏和选项卡之间的阴影

a11xaf1n  于 2023-05-27  发布在  Android
关注(0)|答案(6)|浏览(143)

我的应用程序使用的是自己的风格,我与Android的动作栏样式生成器(风格兼容性= AppCombat)。操作栏和选项卡的颜色是相同的,但问题是它们之间有阴影。我怎样才能消除这个阴影?

<style name="MyAppTheme" parent="android:Theme.Holo.Light">
<item name="android:windowContentOverlay">@null</item>

“android:windowContentOverlay”正在移除选项卡下方的阴影,而不是上方的阴影。

pw9qyyiw

pw9qyyiw1#

下面是solutionAudren Teissier,它为我工作:
这是因为你使用的是drawable而不是颜色。寻找类似这样的东西:

<style name="MyActionBar"
parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
<item name="android:background">@color/yourcolor</item>
</style>

用上面的颜色替换可绘制的,它应该消失。

vxf3dgd4

vxf3dgd42#

在您的AppBarLayout中使用以下属性

app:elevation="0dp"
ego6inou

ego6inou3#

在片段中使用以下代码

getSupportActionBar().setElevation(0);
ymzxtsji

ymzxtsji4#

状态栏上的阴影是系统设置的,无法移除,但是您所指的状态栏位于Theme.Holo.Light内部。据我所知,它不能被删除。

dxpyg8gm

dxpyg8gm5#

如果您设置选项卡布局高度删除。它的工作正常

svgewumm

svgewumm6#

希望我已经正确理解了你的问题,那就是你想在某种程度上合并操作栏与标签,所以没有边界之间->线或阴影你提到的。如果这是正确的,那么这就是你正在寻找的:
将此添加到MyAppTheme

<item name="android:actionBarStyle">@style/LineRemover</item>

并更改这一行:

<item name="android:windowContentOverlay">@null</item>

对此:

<item name="android:windowActionBarOverlay">true</item>

然后在下面添加以下样式:

<style name="LineRemover" parent="android:Widget.Holo.ActionBar">
    <item name="android:background">@android:color/transparent</item>
</style>

最后你会得到这样的东西:

<style name="MyAppTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="android:actionBarStyle">@style/LineRemover</item>
</style>

<style name="LineRemover" parent="android:Widget.Holo.ActionBar">
    <item name="android:background">@android:color/transparent</item>
</style>

我猜你知道你必须在android清单中注册你的主题(在你的activity或application标签中:

android:theme="@style/MyAppTheme" >

相关问题