2

我在网上找不到任何关于我的问题的信息,所以我想我会在这里分享。

我的问题:我正在开发一个平板电脑应用程序,它有一个 ActionBar。说 ActionBar 的显示选项之前是通过以下方式在我的活动的 onCreate 中设置的:

final ActionBar
    bar = getActionBar();
bar.setDisplayOptions(ActionBar.DISPLAY_HOME_AS_UP|ActionBar.DISPLAY_SHOW_HOME|ActionBar.DISPLAY_USE_LOGO);

那时一切都很好,主页图标上会自动显示一个箭头,向用户显示他可以向上导航。

现在,我想通过一种 XML 样式来设置它——我已经为背景设置了它,但只是关于使用显示选项。这是我的做法:

<!-- actionbar's style -->
<style name="Widget.myProject.Light.ActionBar" parent="android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">@drawable/bg_action_bar</item>
    <item name="android:displayOptions">homeAsUp|useLogo|showHome</item>
</style>

这种新方法的问题在于我的 Android 3.2 平板电脑上没有显示主页图标上的箭头。无论我是否以编程方式设置显示选项,只要我在 XML 中设置它,它就无法显示它。

有没有人遇到过这种情况并以某种方式找到解决方法?

4

4 回答 4

2

对我来说,只有这段代码有效:

ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);        
actionBar.setHomeButtonEnabled(true);
于 2013-03-26T14:02:01.343 回答
1

如果您使用的是android.support.v7.app.ActionBarActivity然后这样做:

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

更多信息可以在这里找到:http: //developer.android.com/training/implementing-navigation/ancestral.html

于 2014-11-01T20:12:08.727 回答
0

如果您使用的是 v7.app.actionBar 和 holo.theme 使用这个:

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

代码工作得很好。

于 2015-05-02T10:28:29.067 回答
0

这是一个简单的方法:

getActionBar().setDisplayHomeAsUpEnabled(true);
于 2015-05-06T12:51:48.553 回答