如何从活动中删除标题栏使用对话框主题扩展ActionBarActivity或AppcompatActivity

我必须从ActionBarActivity主题Theme.AppCompat.Light.Dialog扩展我的活动之前,现在从AppcompatActivity,因为我的基本活动扩展了这一点。

但现在新的appcompat v7(v22)库我的活动开始显示标题栏,尽pipe我使用自定义样式的项目windowActionBar = false,android:windowNoTitle = true。 但是,直到appcompat库升级没有这样的问题,标题栏没有显示。

如果我的活动扩展FragmentActivity一切都好,我明白,也许我使用一个坏的模式,我的对话活动延伸从AppcompatActivity,但我想知道是否有一种方法来删除标题栏?

Solutions Collecting From Web of "如何从活动中删除标题栏使用对话框主题扩展ActionBarActivity或AppcompatActivity"

我有同样的问题,需要做一些像下面解决(注意使用“windowNoTitle”,而不是“android:windowNoTitle”)

<style name="Theme.MyDialog" parent="@style/Theme.AppCompat.Light.Dialog"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style> 

您可以通过调用hide()来隐藏操作栏。 例如:

 ActionBar actionBar = getSupportActionBar(); actionBar.hide(); 

尝试

  getSupportActionBar().hide() 

如果您使用的是AppCompatActivity

  getActionBar().hide() 

如果你的活动扩展了ActionBarActivity。 希望能帮助到你。

如果您正在使用支持库,请使用:

 getSupportActionBar().setDisplayShowTitleEnabled(false); 

如果不是,那么使用

 getActionBar().setDisplayShowTitleEnabled(false); 

为了解决类扩展AppCompatActivity上的actionbar,我首先在style.xml文件中定义从主要主题扩展的新主题:

style.xml

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> <style name="AppTheme.NoActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style> 

只有一件事情在AppCompat主题 – supportRequestWindowFeature(Window.FEATURE_NO_TITLE);

在AndroidManifest.xlm中添加android:theme="@style/AppTheme.NoActionBar"在我的情况下android:theme="@style/AppTheme.NoActionBar" 。 @Brexx Galangue解决scheme给了我下面的运行时错误:

 java.lang.RuntimeException: Unable to start activity Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 

公共类MainActivity扩展AppCompatActivity {

  @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setCustomView(R.layout.custom_title_bar); } } 

尝试将这些代码添加到您的清单中,具体来说就是添加到您想要消除其操作Actionbar的活动中:

 android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" > 

希望它有助于:D