Android- ActionBar隐藏在模拟器中但以XML布局显示

时间:2015-10-10 00:05:27

标签: android android-actionbar

我使用了getSupportActionBar()。hide();结果如预期,在应用程序测试期间隐藏了操作栏,但在XML设计视图中它仍然可见,这是一个问题,因为我需要可视化应用程序的外观。我能以任何方式让它在XML设计视图中消失吗?

2 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为您以编程方式禁用了操作栏,而您的IDE并不知道它是否发生。

将此添加到res/values/style.xml(如果您没有,请创建一个)

<style name="AppThemeNoTitleBar" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
</style>

并将其放在AndroidManifest.xml中的application标记下

android:theme="@style/AppThemeNoTitleBar"

所以从头开始(假设你没有任何东西,它应该是这样的。

RES /值/ style.xml

<resources>
    <style name="AppThemeNoTitleBar" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowNoTitle">true</item>
        <item name="windowActionBar">false</item>
    </style>
</resources>

的AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myapp" >

    <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppThemeNoTitleBar" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    </application>

</manifest>

答案 1 :(得分:0)

我认为您的清单中有活动主题。如果删除包含操作栏的主题,问题就解决了。