Android 带有导航选项卡的操作栏随屏幕方向改变高度

Android 带有导航选项卡的操作栏随屏幕方向改变高度,android,android-actionbar,android-tabs,nexus-7,Android,Android Actionbar,Android Tabs,Nexus 7,我的目标是增加肖像模式的操作栏高度。我现在设定 android:actionBarSize 在mythemes.xml中 <?xml version="1.0" encoding="utf-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="DayTheme" parent="android:style/Theme.Holo.Ligh

我的目标是增加肖像模式的
操作栏
高度。我现在设定

android:actionBarSize

在mythemes.xml中

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="DayTheme" parent="android:style/Theme.Holo.Light">
        <item name="android:actionBarSize">@dimen/actionBarHeight</item>
        <item name="android:actionBarTabTextStyle">@style/tab_indicator_text_dark</item>
    </style>
    <style name="NightTheme" parent="android:style/Theme.Holo">
        <item name="android:actionBarSize">@dimen/actionBarHeight</item>
        <item name="android:actionBarTabTextStyle">@style/tab_indicator_text_light</item>
    </style>
</resources>
我正在用安卓4.2开发Nexus7

如何在纵向模式下获得与横向模式下相同的80dp高度?

您写道:

如何在纵向模式下获得与横向模式下相同的80dp高度

通过将
应用程序
主题属性
android:actionBarSize
ActionBar.TabView
style属性
android:minHeight
(或
height
)设置为80度

一个基本的例子:

<style name="ThemeHoloWithActionBar" parent="android:Theme.Holo.Light">
    <item name="android:actionBarTabStyle">@style/ActionBarTabStyle</item>
    <item name="android:actionBarSize">80dip</item>
</style>

<style name="ActionBarTabStyle" parent="@android:style/Widget.Holo.ActionBar.TabView">
    <item name="android:minHeight">80dip</item>
</style>
这将在纵向模式下生成倾斜高度为80的选项卡:

横向模式下倾斜高度为80的标签:

编辑:

对于本例,清单中的SDK版本设置为:

android:minSdkVersion="12"
android:targetSdkVersion="15"

根据OP的说法,该示例使用这些SDK设置。但是,如果将
targetSkdVersion
设置为16或17,则示例不起作用。OP提交了一份

我在一个新的样本项目中尝试了你的建议。我在Nexus7和模拟器上运行了它。它们都没有产生像你在肖像模式下的高度图片那样的结果。在纵向模式下,高度仍然小于横向模式下的高度。我已将其作为项目上载到github:。试试看它是否能在Nexus7上产生预期的结果。我的屏幕截图来自运行4.03的Galaxy S2。感谢您的项目!因此,您的项目和我的项目之间的区别在于AndroidManifest.xml。如果将skd版本更改为16或17,它将停止工作。我将为android团队提交一份错误报告。对于任何对此问题感兴趣的人,请在Nexus 4上的android 4.3上以“完全不为我工作”(无论是
minSdkVersion
还是
targetSdkVersion
)为开头。选项卡只是纵向中的默认高度,新的大小仅在横向中出现。有人有什么建议吗?这个问题真令人沮丧!!我也遇到过同样的问题,我想知道你是否也在使用这个“反射黑客”来强制在操作栏中嵌入标签。
   <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/ThemeHoloWithActionBar" >
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ActionBar actionbar = getActionBar();
    actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    actionbar.setDisplayShowTitleEnabled(false);
    actionbar.setDisplayShowHomeEnabled(false);
    ActionBar.Tab tabA = actionbar.newTab().setText("Tab A");
    ActionBar.Tab tabB = actionbar.newTab().setText("Tab B");
    ActionBar.Tab tabC = actionbar.newTab().setText("Tab C");

    tabA.setTabListener(new MyTabsListener());
    tabB.setTabListener(new MyTabsListener());
    tabC.setTabListener(new MyTabsListener());

    actionbar.addTab(tabA);
    actionbar.addTab(tabB);
    actionbar.addTab(tabC);
}
android:minSdkVersion="12"
android:targetSdkVersion="15"