我的目标是增加ActionBar纵向模式的高度.我目前订
机器人:actionBarSize
在我的Themes.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>
Run Code Online (Sandbox Code Playgroud)
我在横向模式下获得了所需的效果,我将ActionBar高度增加到80dp.

然而,我将屏幕旋转为纵向模式,高度变化如此.

注意我在代码中进行以下调用.
final ActionBar bar = getActionBar();
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
bar.setDisplayShowTitleEnabled(false);
bar.setDisplayShowHomeEnabled(false);
Run Code Online (Sandbox Code Playgroud)
我正在开发一个带有android 4.2的Nexus 7.
如何在横向模式下以纵向模式获得相同的80dp高度?
基本上,我想改变动作栏中标签的高度.在stackoverflow上已多次询问此问题,例如:
我已经尝试了大多数解决方案,但没有任何效果,这是我的代码.
<style name="CustomActionBarTheme" parent="@android:style/Theme.Holo">
<item name="android:scrollHorizontally">false</item>
<item name="android:paddingLeft">0dp</item>
<item name="android:paddingRight">0dp</item>
<item name="android:actionBarSize">80dp</item>
<item name="actionBarSize">80dp</item>
<item name="android:actionBarTabStyle">@style/ActionBarTabStyle</item>
</style>
<style name="ActionBarTabStyle" parent="@android:style/Widget.Holo.ActionBar.TabView">
<item name="android:height">80dp</item>
</style>
Run Code Online (Sandbox Code Playgroud)
显然,代码只会改变操作栏高度,而不是我想要的标签栏高度.这是图片供参考:

如您所见,底部的操作栏更高.但在操作栏模式下,标签高度保持不变.
为什么会这样?我错过了什么???先感谢您 :).
解决了,如:
和
https://code.google.com/p/android/issues/detail?id=41792
显然这是一个来自android sdk的bug ...从来没有遇到过像这样的bug :(.希望这有助于其他人.
android android-layout android-fragments android-tabs android-styles
首先,有我当前标签栏的图像

我想要的是将图像对齐到最左边,同时保持文本居中或将图像移动到文本顶部居中.
这是我添加文本的方式:
var tab = this.ActionBar.NewTab ();
tab.SetText (tabText);
tab.SetIcon (iconResourceId);
Run Code Online (Sandbox Code Playgroud)
这是我的相关style.xml条目:
<style name="Theme.Discover" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBar</item>
<item name="android:actionBarTabStyle">@style/MyActionBarTabStyle</item>
<item name="android:actionBarTabTextStyle">@style/MyActionBarTabText</item>
<item name="android:actionMenuTextColor">#ffffff</item>
<item name="android:windowBackground">@drawable/bg</item>
</style>
<style name="MyActionBarTabStyle" parent="@android:style/Widget.Holo.Light.ActionBar.TabView">
<item name="android:background">@drawable/action_tab_selector</item>
</style>
<!-- ActionBar tabs text styles -->
<style name="MyActionBarTabText"
parent="@android:style/Widget.Holo.ActionBar.TabText">
<item name="android:textColor">#ffffff</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我也能理解java代码,如果你不熟悉Xamarin,我仍然很欣赏java的例子和答案.