gpt4 book ai didi

Android Actionbar 设置选项卡的宽度

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:05:56 26 4
gpt4 key购买 nike

目前我正忙于为我的公司开发 WHMCS 应用程序。作为导航,我想在操作栏中使用 Tab 功能。

但是,如何编辑制表符的宽度?我需要 5 个一起显示在一个屏幕上,而无需滚动。我已经尝试过像这样的一些样式:

<style name="AppBaseTheme" parent="android:Theme.Light">
</style>

<style name="AppTheme" parent="AppBaseTheme">
<item name="@android:attr/actionBarTabStyle">@style/tab_nav</item>
<item name="android:actionBarTabTextStyle">@style/actionBarTabTextStyle</item>
</style>

<style name="actionBarTabTextStyle" parent="android:Widget.Holo.Light.ActionBar.TabText.Inverse">
<item name="android:padding">1dp</item>
</style>

<style name="tab_nav" parent="android:style/Widget.Holo.Light.Tab">
<item name="android:paddingLeft">-25dp</item>
</style>

<style name="CustomTabTextStyle" parent="@android:style/TextAppearance.Holo">
<item name="android:textColor">#2456c2</item>
</style>

但是,当使用更高的负值时,宽度不会缩小。

最佳答案

您好,我认为这可能对您有所帮助...这段代码实际上是将操作栏绑定(bind)到屏幕宽度,因此选项卡将自行调整 =)

private void setTabsMaxWidth() {
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int screenWidth = displaymetrics.widthPixels;
final ActionBar actionBar = getActionBar();
final View tabView = actionBar.getTabAt(0).getCustomView();
final View tabContainerView = (View) tabView.getParent();
final int tabPadding = tabContainerView.getPaddingLeft() + tabContainerView.getPaddingRight();
final int tabs = actionBar.getTabCount();
for(int i=0 ; i < tabs ; i++) {
View tab = actionBar.getTabAt(i).getCustomView();
TextView text1 = (TextView) tab.findViewById(R.id.text1);
text1.setMaxWidth(screenWidth/tabs-tabPadding-1);
}
}

关于Android Actionbar 设置选项卡的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16590869/

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