1

我正在使用 Google 的 UI 设计指南开发应用程序,所以我想实现 ActionBar。

它必须在 2.2 上运行,所以我决定使用 ActionBarCompat 示例。

我没有使用 iosched,其中操作栏是 XML 文件中包含的布局,我决定使用帮助器来实现它:

public void onCreate(Bundle savedInstanceState) {
  mActivity.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
}

public void onPostCreate(Bundle savedInstanceState) {
  mActivity.getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
    R.layout.actionbar_compat);
  setupActionBar();
}

问题是,当我的应用程序正在加载时,它会显示默认的 TitleBar,然后它会变成我的,所以,有一个丑陋的效果......

有什么办法可以避免吗?

谢谢你!!

4

1 回答 1

1

这是因为应用程序的默认主题具有标题栏,并且在运行 onCreate() 方法之前加载了主题。

因此,您需要在 Manifest 文件中使用没有标题栏的主题更改活动(或应用程序)的主题。

举个例子 :

    <activity
        android:name=".MyActivity"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Light.NoTitleBar" >
于 2012-02-02T15:21:39.737 回答