【问题标题】:How to hide the actionbar in some activities如何在某些活动中隐藏操作栏
【发布时间】:2014-06-18 01:29:01
【问题描述】:

我有一个应用程序,当我在 2.3.3 中测试它时,我想要的活动没有操作栏,但是当我使用 4.2 在模拟器中测试它时,这些活动有一个操作栏。

如何从这些活动中完全删除操作栏。

我从here 尝试过这个: android:theme="@android:style/Theme.NoTitleBar"

没用。

如果我使用 getActionBar().hide(),并在我的 2.3.3 上对其进行测试,它会崩溃。如果我尝试 getSupportActionBar().hide() 我得到错误:方法 getSupportActionBar() 未定义。注意:我没有扩展操作栏活动。我正在扩展 Activity。

【问题讨论】:

  • 根据你使用的最小API,你可以尝试在你想要显示的没有操作栏的活动的onCreate()方法中使用getActionBar().hide()getSupportActionBar().hide()
  • 如果我使用getActionBar().hide(),并在我的 2.3.3 上对其进行测试,它会崩溃。如果我尝试getSupportActionBar().hide(),我会得到错误:The method getSupportActionBar() is undefined。注意:我没有扩展操作栏活动。我正在扩展 Activity。
  • 不能扩展 ActionBarActivity 吗?
  • 编辑:让我尝试扩展
  • @G.T.解决了它。扩展 FragmentActivity 怎么样?我正在使用一些日历库,它扩展了 FragmentActivity。如何禁用此活动中的操作栏?

标签: android android-actionbar


【解决方案1】:

(来自我写的 cmets)

首先,让你的类扩展ActionBarActivity。然后在你想隐藏action bar的activity的onCreate()回调中调用这个方法:

private void hideActionBar() {
    //Hide the action bar only if it exists
    if (getSupportActionBar() != null) {
        getSupportActionBar().hide();
    }
}

【讨论】:

    【解决方案2】:

    您可以使用getActionBar().hide() 方法隐藏操作栏(或者getSupportActionBar().hide 是您正在使用支持库。

    您可以在调用setContentView之前在onCreate方法中调用requestWindowFeature(Window.FEATURE_NO_TITLE);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-01
      • 2017-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-03
      • 2020-03-04
      相关资源
      最近更新 更多