【问题标题】:Removing titlebar? [closed]删除标题栏? [关闭]
【发布时间】:2015-12-14 13:14:39
【问题描述】:

好的,所以我一直在尝试删除我的应用程序的标题栏:

现在,我已经完成了我的研究。我见过this,其中建议将其添加到清单中:

我已经这样做了,并且在 xml 的设计视图中,标题仍然存在!此外,我在运行时遇到异常,说我无法更改 setContentView 上的布局。

标题还在。我该如何正确摆脱它?我还尝试了将<item name="windowActionBar">false</item> 放在 Styles.xml 中的方法,但仍然没有运气......我知道如何在 Java 中执行此操作的许多解决方案,但我不想在 Java 中执行此操作。

【问题讨论】:

  • 现在的问题是题外话:寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及最短的代码有必要在问题本身中重现它。 ...答案取决于您使用的 Activity 类(兼容或默认)以及您所针对的最小 api
  • @Selvin 嗯。那是怎么回事?相信未来的用户也会有这个疑问。到目前为止,还有 6 个答案不起作用,这意味着这可能是一个未回答的问题。如果您打算结束这个问题,请不要,因为像我这样有这个问题的人不知道该怎么做。 :)
  • 分析器已经是here ... 请不要像我这样有此问题的人 ...然后解决问题...因为我写了一个特定的问题或错误以及重现它所需的最短代码 ...您的问题没有具体问题,我确实提供了您忘记提及的信息
  • @Selvin ...我是在 my 问题中链接该问题的人...您不认为我会阅读 的问题我在发布类似的之前链接了然后解决问题我看不出有什么问题。如果您想成为某种 SO 版主,为什么不向我提出修改建议,或者请给我一些反馈,说明它有什么问题? fix the question 语句不会有任何好处。
  • 请停止过度依赖您帖子中的图片。您对该网站所做的许多贡献都涉及图像,通常是不必要的。请停止发布代码图片,而是花时间在问题中编写代码。代码图像不计入代码,您寻求调试帮助的问题必须包含您所询问的代码。

标签: android xml android-layout android-activity android-studio


【解决方案1】:

您可以简单地使用可用的NoActionBar 主题之一。由于您将其设置在 <application 标签上,它将影响您应用程序的所有 Activitis。请记住,您始终可以覆盖每个 <activity 标签的行为

【讨论】:

  • 我做到了,但我得到了Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
  • 试试@android:style/Theme.AppCompat.Light.NoActionBar
  • 嗯...似乎没有解决:snag.gy/Jwn0Z.jpg
  • 因为Theme.AppCompat不在@android:style
  • 塞尔文是对的。它没有@android,因为它是AppCompat。顺便说一句,您在 <activity 标签中覆盖了您的主题。你知道吗?
【解决方案2】:

试试这个:

android:theme="@style/Theme.AppCompat.Light.NoActionBar"

在清单中的活动标签中。

【讨论】:

    【解决方案3】:

    确保您的 xml 中有一个 Toolbar 组件,如果有,请尝试将其删除。

    【讨论】:

      【解决方案4】:

      试试下面的代码....

      android:theme="@android:style/Theme.NoTitleBar"
      

      【讨论】:

      • Caused by: java.lang.IllegalStateException: 您需要在此活动中使用 Theme.AppCompat 主题(或后代)。
      【解决方案5】:

      我觉得你可以试试这个,

      <activity android:name=".MainActivity"
                android:label="@string/app_name"
                android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">
      

      或者在 MainActivity 的 OnCreate() 里面做这个,

      //Remove title bar
      this.requestWindowFeature(Window.FEATURE_NO_TITLE);
      
      //Remove notification bar
      this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
      
      //set content view AFTER ABOVE sequence (to avoid crash)
      this.setContentView(R.layout.your_layout_name_here); 
      

      【讨论】:

      • 我做到了,但我得到了Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
      • 然后再次阅读您提供的链接...... appcompat 也有解决方案!
      猜你喜欢
      • 2015-11-17
      • 1970-01-01
      • 2010-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-24
      相关资源
      最近更新 更多