【问题标题】:ActionBar not scrolling to selected tab if this one is outside the visible bounds of actionBar on screen如果此选项卡超出屏幕上 actionBar 的可见边界,则 ActionBar 不会滚动到所选选项卡
【发布时间】:2012-02-24 10:12:19
【问题描述】:

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

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

虽然 Tab 在 ActionBar 中被很好地选中(即其标签带有下划线/突出显示),但所考虑的 Tab 当前在屏幕上不可见。确实,屏幕宽度太小,无法显示所有可用的 ActionBar 选项卡。

我的问题是,setSelectedNavigationItem 不会使 ActionBar 滚动到选定的选项卡,以便用户可以看到它的标签。用户必须手动滚动到 ActionBar 以显示当前选择了哪个选项卡。

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

【问题讨论】:

  • 嗯 - 多亏了你的问题,我知道了如何做到这一点 - 但是它会自动滚动到最后的正确标签。

标签: android android-actionbar


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-02
    • 2012-04-11
    • 1970-01-01
    相关资源
    最近更新 更多