24

我想从操作栏中删除左箭头,只需要图标和标题。

我的代码:

getSupportActionBar().setIcon(R.drawable.logo);
getSupportActionBar().setDisplayShowTitleEnabled(true);
getSupportActionBar().setTitle(R.string.dashboardtitle);
getSupportActionBar().setDisplayHomeAsUpEnabled(false);

但这不会删除左箭头。任何帮助!

4

5 回答 5

25

根据规范android 规范:要启用向上导航的图标(在图标旁边显示“向上”指示符),请在 ActionBar 上调用 setDisplayHomeAsUpEnabled( true ):

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);
    ActionBar actionBar = getActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);
    ...
}

所以你应该设置actionBar.setDisplayHomeAsUpEnabled(false);

更新: 我用 ActionBar sherlock 测试下一个代码,它的工作。没有后退箭头:

getSupportActionBar().setIcon(R.drawable.ic_launcher);
getSupportActionBar().setDisplayShowTitleEnabled(true);
getSupportActionBar().setTitle(R.string.about_event_location);
getSupportActionBar().setDisplayHomeAsUpEnabled(false);
于 2013-05-27T11:01:25.267 回答
22

您需要将此添加到您的 actionBar 主题中。您可以将箭头图像替换为您自己的透明图像

<item name="android:homeAsUpIndicator">@drawable/action_arrow</item>
于 2013-05-27T11:32:38.607 回答
3
getActionBar().setHomeAsUpIndicator(R.drawable.action_arrow);

其中 action_arrow 是一个 25x10px 的透明 png。夏洛克的相同代码是:

getSupportActionBar().setHomeAsUpIndicator(R.drawable.action_arrow);
于 2013-12-18T16:05:40.390 回答
1

@vivek:效果很好。我不建议像 Tim Cooper 所说的那样使用 @android:color/transparent ,因为 Title 是靠左对齐的。所以空图像更好

于 2013-10-16T15:46:24.200 回答
0

在 AndroidManifest.xml 中

删除以下代码,这将从您的 ActionBar 中删除后退按钮

android:parentActivityName=".Main.MainActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".Main.MainActivity" />

保持如下:

<activity
android:name=".YourActivity"
android:label="@string/your_activity_label">
</activity>
于 2018-07-21T04:16:15.337 回答