10

我的 android 应用程序具有使用操作栏的选项卡导航。它运行良好,但令我困扰的是,在应用程序的第一次启动期间,一个小的默认操作栏会短暂显示,然后被真实的选项卡导航操作栏替换。我的 onCreate 是这样开始的:

    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
    setContentView(R.layout.activity_main);

    //Set up the actionbar
    final ActionBar actionBar = getActionBar();
.
.
.

我该怎么做才能初始化真正的操作栏,而不会在启动之前短暂显示一个小的默认操作栏?

谢谢

4

3 回答 3

5

启动时隐藏

 getSupportActionBar().hide();

之后你可以再次显示它...

 getSupportActionBar().show();

应该和Android原生的ActionBar一样。

你应该在清单中使用这一行,不要使用 getActionBar()

<item name="android:windowActionBar">false</item>

并且一旦在主 Activity 中完成,请在下面使用或不使用

<item name="android:windowActionBar">true</item>
于 2012-09-18T09:47:54.607 回答
4

将此作为您的活动清单定义:

 <activity
            android:name=".MyActivity"
             android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
            >

然后在您的 oncreate 中执行此操作以显示您要使用的实际主题:

setTheme(R.style.AppTheme); 
于 2013-10-05T19:53:27.760 回答
1

如果您正在使用操作栏 sherlock 并且您想从 FragmentActivity 切换它,那么您调用

getSherlockActivity().getSupportActionBar().hide();
于 2013-01-18T16:59:37.640 回答