隐藏和显示预蜂窝设备上的操作栏

时间:2012-04-29 07:32:56

标签: android compatibility android-3.0-honeycomb android-actionbar android-2.3-gingerbread

操作栏甚至可以在预蜂窝设备上显示,如actionbar-compat sample所示。

我希望能够按需隐藏和显示操作栏(以编程方式)。我该怎么做?

问题是使用支持库获取操作栏会返回null。我也尝试使用它的id找到它并将可见性设置为消失,但它只是显示了一个空格。

3 个答案:

答案 0 :(得分:1)

好的,我有一个解决方法,但它在开始时不起作用,这意味着在很短的时间内,操作栏将显示在开头。

这是我创建的用于隐藏操作栏(用于预蜂窝版本)的代码,我通过查看this post来考虑:

ViewGroup decorView = (ViewGroup) this.getWindow().getDecorView();
ViewGroup root = (ViewGroup) decorView.getChildAt(0);
View titleContainer = root.getChildAt(0);
titleContainer.setVisibility(View.GONE);

如果有人知道如何在开头隐藏操作栏并选择何时显示,请告诉我。

编辑:顺便说一下,如果有人希望通过清单使用主题并使用actionBarSherlock,你可以使用“Theme.Sherlock.Light.NoActionBar”或“Theme.Sherlock.NoActionBar”,如果你想隐藏&在代码中显示,只需使用getSupportActionBar()。hide()和getSupportActionBar()。show()。

答案 1 :(得分:1)

最后我使用了actionBarSherlock。

它有更多的功能,这个请求的功能就是其中之一。也许新的支持库可以使用这个功能,但我已经转移到这个解决方案。

答案 2 :(得分:0)

尝试此操作,通过在xml中为您的活动设置以下属性来隐藏xml中的操作栏。 `

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

希望有帮助,如果没有,那么添加评论,如果我的答案有任何问题,请纠正我。