是否可以从操作栏中删除主页按钮

Is it possible remove home button from actionbar

在无法返回的主 activity 上,我想删除操作栏中的应用程序 "home" 按钮。

我认为这让用户感到困惑,他们仍然可以使用 OS 后退按钮退出应用程序。

浏览Whosebug,我看到很多人问这个,但没有一个答案适合我。这是列表:

答案通常是冗长的,可以概括为以下内容:

ActionBar supportActionBar = getSupportActionBar(); //I target some low API
if(supportActionBar != null) {
    supportActionBar.setDisplayShowHomeEnabled(false);
    supportActionBar.setDisplayHomeAsUpEnabled(false);
    supportActionBar.setHomeButtonEnabled(false);
    supportActionBar.setHomeAsUpIndicator(null);
}

我尝试了这些的所有组合,但没有任何效果,无论我尝试使用默认的 ActionBar 还是使用 XML 声明的 compat-v7 ToolBarsetSupportActionBar() .

我也看不到任何适合现在推荐的问题 App Bar,如果有它的答案会更好。

这是我的 activity 清单:

<activity
    android:name=".activity.WelcomeActivity"
    android:logo="@drawable/ic_launcher"
    android:label="@string/long_app_name"
    android:launchMode="singleTop"/>

那么,现在有没有可能去掉这个烦人的无用箭头?

在 styles.xml 中创建新样式:

 <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

在 Manifest 文件中将此样式设置为您的 activity。要添加工具栏,请将其添加到您的布局文件中:

<android.support.v7.widget.Toolbar
        android:background="@color/colorPrimary"
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </android.support.v7.widget.Toolbar>

然后在你的 Java class:

Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

这将删除左上角的箭头。

只需将getSupportActionBar().setDisplayHomeAsUpEnabled(false)放在activity的onCreate中即可。