如果此选项卡位于屏幕上actionBar的可见边界之外,则ActionBar不会滚动到所选选项卡

Rom*_* R. 8 android android-actionbar

我在我的应用程序中设置了一个操作栏.我通过调用Activity.getActionBar()来获取ActionBar .然后我通过ActionBar.addTab()ActionBar.newTab()方法设置我需要的所有选项卡.

当我处于横向模式时,我的所有类别都显示在屏幕上(即,用户可以看到所有可用的选项卡).我选择了最后一个类别(在屏幕右侧).屏幕旋转后(我现在处于纵向模式),由于ActionBar.setSelectedNavigationItem()方法,我保存了所选类别并将其恢复到我的ActionBar上.

虽然Tab在ActionBar中被很好地选中(即,其标签带有下划线/突出显示),但是当前在屏幕上看不到所考虑的选项卡.实际上,屏幕宽度很小,以显示ActionBar的所有可用选项卡.

我的问题是,setSelectedNavigationItem不要让ActionBar滚动到选定的选项卡,以便用户可以看到它的标签.用户必须手动滚动到ActionBar以显示当前选择的Tab.

有人可以帮我解决这个问题吗?

War*_*zit 0

正如@Vadi 在评论中所说:tab.select();将自动滚动到所选选项卡。我的猜测是您将保存的实例状态传递给 super 并设置了选定的。这很可能会导致故障。