LeftNavBar在活动的顶部创建黑条

我正在尝试将Google的LeftNavBarLibrary合并到我的应用程序中。 当我加载导航栏时,最终会在活动顶部添加一个黑条。 酒吧似乎占据了传统行动吧占据的空间。

有谁知道酒吧来自哪里或如何去除它。

谢谢。

我的应用程序主题略有定制。 由于MediaRouteActionProvider的要求,基于AppCompat主题

styles.xml

<resources>
    <style name="AppTheme" parent="@style/Theme.AppCompat">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
    </style>

    <style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
        <item name="android:background">@drawable/ab_gradient</item>
    </style>
</resources>

上面的活动在清单中定义了一个自定义主题。

AndroidManifest.xml中

<activity
    android:name="my.app.namespace.CoreActivity"
    android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen" >
</activity>

应用程序的最低sdk版本是14.因此它不是专门的Google TV应用程序。 我只能在Android 4.1和4.4设备上测试这个bug。


我以这种方式处理操作栏:

getActionBar().hide();

尝试把它放在你的主要活动或是父母的活动中,并始终呈现。 不要担心清单中的主题,只需使用标题栏设置主题并通过代码隐藏它即可。

希望这可以帮助。


看看:在Android 4.0和更低版本上隐藏状态栏

注意这在<application>标签中。 这可能会帮助你。

<application
    ...
    android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen" >
    ...
</application>

或以编程方式:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // If the Android version is lower than Jellybean, use this call to hide
        // the status bar.
        if (Build.VERSION.SDK_INT < 16) {
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
        }
        setContentView(R.layout.activity_main);
    }

您可以通过设置自定义主题将android:windowActionBar样式设置为false。 注意:在这种情况下,getActionBar()将返回null。 如果使用主题移除操作栏,那么该窗口根本不会允许操作栏。

链接地址: http://www.djcxy.com/p/18571.html

上一篇: LeftNavBar creates black bar at the top of the activity

下一篇: Can I make printf format floats like C++ streams