我有一个加载了“情侣”选项卡的操作栏
ActionBar.Tab 选项卡; ActionBar actionBar = getActionBar();
// Hide Actionbar Icon
actionBar.setDisplayShowHomeEnabled(false);
// Hide Actionbar Title
actionBar.setDisplayShowTitleEnabled(false);
// Create Actionbar Tabs
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// Create Contact Tab
tab = actionBar.newTab().setTabListener(new ContactActivity());
// Create your own custom icon
tab.setIcon(R.drawable.contact_tab);
//tab.setText("Contact");
actionBar.addTab(tab);
这是应用操作栏主题的“style.xml”...
<style name="customTabStyle" parent="@android:style/Widget.Holo.ActionBar.TabView">
<item name="android:showDividers">none</item>
<item name="android:padding">0dp</item>
<item name="android:background">@drawable/bottomtab</item>
</style>
在我将背景图像设置到操作栏之前一切正常。但是在我为其设置背景图像后,选项卡尺寸变宽并且我无法减小尺寸..
添加背景图片之前
添加背景图片后
最佳答案
操作栏选项卡的左右内边距为 16 个深度。
<style name="Widget.AppCompat.Base.ActionBar.TabView" parent="">
<item name="android:background">@drawable/abc_tab_indicator_ab_holo</item>
<item name="android:gravity">center_horizontal</item>
<item name="android:paddingLeft">16dip</item>
<item name="android:paddingRight">16dip</item>
<item name="android:minWidth">80dip</item>
</style>
为了覆盖填充,您需要覆盖这些属性:
<style name="ActionBarTabStyle.MY_STYLE" parent="@style/Widget.AppCompat.Light.ActionBar.TabView">
<item name="android:background">@drawable/tab_indicator_ab_MY_STYLE_light</item>
<item name="android:paddingLeft">1dip</item>
<item name="android:paddingRight">1dip</item>
这解决了我的问题。
关于Android Action Bar Tab 的宽度太宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18775957/