微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – Actionbar覆盖不按预期工作

我的 Android应用程序有一个半透明的ActionBar.当我触摸屏幕时隐藏它,并在再次触摸屏幕时再次显示.

/value-11/styles.xml

<style name="FullscreenTheme" parent="android:Theme.Holo">
    <item name="android:actionBarStyle">@style/FullscreenActionBarStyle</item>
    <item name="android:windowActionBarOverlay">true</item>
    <item name="android:windowBackground">@null</item>
    <item name="buttonbarStyle">?android:attr/buttonbarStyle</item>
    <item name="buttonbarButtonStyle">?android:attr/buttonbarButtonStyle</item>
</style>

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

当我启动应用程序时,ActionBar是半透明的,这是预期的状态.当我使用getActionBar()隐藏它时.hide();并使用getActionBar()再次显示.show();它不再是半透明的了.

它是ViewPager中的片段.如果我向右滚动,隐藏并显示预期的效果:ActionBar在show()之后是半透明的;被叫.

更新:每次我向左滚动,错误再次出现.

有没有人知道如何解决这个问题,所以它也适用于第一页或用户向左滚动一个或多个?

解决方法

解决了我的问题:

ViewPager内部视图的布局如下:

<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/presentation"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:contentDescription="@string/presentation"
    android:scaleType="fitCenter"
    android:fitsSystemWindows="true" >
</ImageView>

android:fitsSystemWindows =“true”负责这个奇怪的bug,没有这个,一切正常.

抱歉写这么少的代码,我只是认为它是一个javacode问题而且与xml无关.我找不到一个代码块,大概是将是有错误的那个.我应该如何,错误在我的布局文件中.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐