gpt4 book ai didi

android - ActionBarSherlock:选项卡在横向模式下丢失自定义 View

转载 作者:行者123 更新时间:2023-11-29 01:59:23 24 4
gpt4 key购买 nike

我将 ActionBarSherlock 与 NAVIGATION_MODE_TABS 一起使用。每个选项卡都包含一个自定义 View 。虽然它在纵向模式下看起来不错,但如果选项卡显示为下拉列表(由 Android 自动完成),则在横向模式下会出现很多问题:

  • Android 4.x:选定的选项卡未显示在操作栏中(见图,红色圆圈)。直接使用 Android SDK 中的内置操作栏时也会发生同样的情况。
  • Android 2.x:选定的选项卡未显示在操作栏中。我一点击下拉菜单,整个下拉菜单就消失了,取而代之的是空标签。

Action Bar not showing selected tab

如果我不使用自定义 View ,一切正常。我在图像上创建 ActionBar 的代码(故意保持简单):

getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
for (int i = 0; i < 7; i++) {
ActionBar.Tab tab = getActionBar().newTab();
TextView view = new TextView(this);
view.setText("This is tab " + (i + 1));
tab.setCustomView(view);
tab.setTabListener(this);
getActionBar().addTab(tab);
}

我做错了什么吗?

编辑:澄清一下,getSupportActionBar() 存在于原始代码中,并且 ActionBarSherlock 的操作栏工作正常,除了所描述的问题。我使用上面的代码示例来说明第一个问题(选定的选项卡未显示在操作栏中)在使用内置操作栏时也存在。抱歉造成混淆。

最佳答案

对于 ActionBarSherlock,您应该使用 getSupportActionBar() 以使其在 2.x 上工作

getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
for (int i = 1; i <= 3; i++) {
ActionBar.Tab tab = getSupportActionBar().newTab();
tab.setText("Tab " + i);
tab.setTabListener(this);
getSupportActionBar().addTab(tab);
}

文本颜色要么来自您应用到选项卡的自定义 View ,要么来自您在 Activity 级别应用的主题。

关于android - ActionBarSherlock:选项卡在横向模式下丢失自定义 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13430542/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com