如何在启动时从Android中的ActionBar中删除图标和标题?

时间:2014-04-10 08:04:03

标签: android

在我的android项目中,我希望在ActionBar中禁用图标和标题。

以下是代码:

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getActionBar().setDisplayShowTitleEnabled(false);
        getActionBar().setDisplayShowHomeEnabled(false);
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

但是他们总是在创业时出现,过了一会儿他们就会消失,但我根本不想要他们。如何在启动时删除它们?

4 个答案:

答案 0 :(得分:0)

在ActionBar上调用setDisplayShowHomeEnabled(false)setDisplayShowTitleEnabled(false)

actionBar.setDisplayUseLogoEnabled(false);应该这样做。

对于Splashscreen,您应该在清单中使用此行并且不要使用getActionBar()

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

并且一旦Splash Activity在主Activity中使用完成后使用或者什么

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

Reffer this ----&gt; click here

答案 1 :(得分:0)

您可以使用以下代码 -

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

如果您想要设备的全屏,可以使用以下代码 -

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

并且,也可以参考Developer's Site

另一种方法

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); 

this是指Activity

答案 2 :(得分:0)

也许this answer可以帮到你。它帮助了我。

<quote>
最佳方法是在主题中将显示选项设置为useLogo。 E.g。

<style name="AppTheme" parent="android:Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/AppTheme.ActionBar</item>
</style>

<style name="AppTheme.ActionBar" parent="android:Widget.Holo.Light.ActionBar.Solid">
    <item name="android:displayOptions">useLogo</item>
</style>

这实际上不会显示徽标(如果已设置),因为未包含showHome </quote>

答案 3 :(得分:-1)

试试这个:

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ActionBar actionBar = getActionBar();
    actionBar.setHomeButtonEnabled(false);
    actionBar.setDisplayHomeAsUpEnabled(false);
    actionBar.setDisplayShowHomeEnabled(false);

    setContentView(R.layout.activity_main);
}

注意:在Honeycomb(API:11)及更高版本中添加了getActionBar()方法