更改Actionbar选项卡高度

3

我一直在尝试更改Android中操作栏下面选项卡的高度。我对此进行了大量搜索并尝试了许多解决方案,例如在清单中将主题设置为应用程序等。以下是我应用过的少数主题之一,但没有成功。

<style name="CustomActionBarTheme" parent="@android:style/Theme.Holo">
        <item name="android:actionBarTabStyle">@style/ActionBarTabStyle</item>
        <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>
</style>

我也尝试了这个:

<style name="Widget.Holo.Tab" parent="@android:style/Widget.Holo.Light.ActionBar.TabView">
    <item name="android:height">200dp</item>
</style>

<style name="MyTabTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarTabStyle">@style/Widget.Holo.Tab</item>
</style>

我想在图标下方添加一个文本。请帮我解决这个问题。
提前感谢您的帮助。

你尝试过在“Widget.Holo.Tab”中使用“android:minHeight”吗? - Shayan Pourvatan
谢谢您的回复。是的,我已经尝试了所有可能的方法,但都没有成功。如果您有任何示例代码,请分享给我。 - Nuraiz
我在https://dev59.com/72Ei5IYBdhLWcg3wndVw#21110744上回答了同样的问题,但我认为这是Android SDK中的一个错误。 - Shayan Pourvatan
2个回答

1
似乎Tab的高度必须等于ActionBar的高度。尝试将Tab的高度从200 dp更改为80 dp,或将ActionBar的高度从80 dp更改为200 dp。虽然这可能不是您期望的答案。
<!--Start Theme custom action bar theme -->
<style name="LeActionBarTheme"
    parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="android:actionBarTabStyle">@style/MyActionBarTab</item>
    <item name="android:actionBarTabTextStyle">@style/MyActionBarTabText</item>
    <item name="android:actionBarSize">60dp</item>
    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/MyActionBar</item>
    <item name="actionBarTabStyle">@style/MyActionBarTab</item>
    <item name="actionBarTabTextStyle">@style/MyActionBarTabText</item>
    <item name="actionBarSize">60dp</item>
</style>

<!-- ActionBarTab Styles -->
<style name="MyActionBarTab"
    parent="@style/Widget.AppCompat.ActionBar.TabView">
    <item name="android:height">60dp</item>
</style>

谢谢@张雷,但它没有起作用。有任何代码片段吗? - Nuraiz
谢谢你提供的代码,但是它还有很多缺失,比如选项卡文本、操作栏和ActionBarTab的样式都没有添加,同时父级样式也无法正常工作。 - Nuraiz
那些没有附加的样式与这个问题无关。如果您的应用程序仅支持3.0及以上版本,您不必使用support v7中的AppCompat。而且,如果您将高度更改为相同的参数,我认为您的代码和我的代码没有任何区别。 - ZhangLei

0

您可以使用3个值来设置选项卡的尺寸:

<style name="ActionBar.Solid.Mg_style" parent="@android:style/Widget.Holo.Light.ActionBar.Solid">

    <item name="android:actionBarSize">150dp</item>
    <item name="android:height">150dp</item>
    <item name="android:width">150dp</item>

</style>

但是你需要在你的样式中包含ActionBar.Solid.Mg_style:

<style name="AppTheme" parent="Theme_Mg_style">            
    <item name="android:windowTitleSize">54dip</item>
</style>

<style name="Theme_Mg_style" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/ActionBar.Solid.Mg_style</item>


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接