我正在使用sherloackActionBar并使菜单始终可见。现在,当我将设备从纵向更改为横向,然后再次更改为纵向时,菜单将被锁定(无法单击任何选项) 现在,当我再次更改方向时,之前的菜单点击操作开始工作。这个问题对我来说也很奇怪,因为它只发生一次(我们第一次这样做,然后它工作正常)。
如果我需要添加任何属性或其他内容,任何人都可以帮助我。我使用android:configChanges =“orientation | screenSize”,这似乎是根据我的问题的根本原因。如果我错了,请纠正我。
谢谢。
答案 0 :(得分:0)
杰克沃顿自己在question
中的回答ActionBarSherlock是一个兼容层,存在于活动的内容视图中。这与窗口内但在普通内容视图之外的本机操作栏略有不同。
由于这个事实,当您在清单中声明处理方向更改时,它无法正确地重新创建。如果你阻止ABS重新创建操作栏视图,那么几乎总会出现像你所描绘的那样的神器。
TL; DR:ActionBarSherlock不适用于configChanges =“orientation”
但我最近发现自己处于一个幸运的境地,这显然解决了同样的问题。
我不确定这是否会确定它,但**如果您将PADDING设置为操作栏样式中的选项卡,则问题将消失,您将能够正常单击选项卡。
继承我使用的代码,特别是TabView样式(我使用过这个style generator)
<style name="Widget.Styled.ActionBarTab" parent="@style/Widget.Sherlock.ActionBar.TabView">
<item name="android:background">@drawable/tab_indicator_ab</item>
<item name="background">@drawable/tab_indicator_ab</item>
<item name="android:paddingLeft">5dp</item>
<item name="android:paddingRight">5dp</item>
</style>
尝试一下,让我们都知道它是否适合你。如果你确认的话,这可能是一个很有前景的解决方案。