如何将操作栏选项卡对齐到中心

时间:2014-03-26 08:21:18

标签: android android-actionbar android-actionbar-compat

我想在可滑动的视图寻呼机中居中对齐操作栏标签图标。显然,图标以大于15的目标版本为中心,但操作栏的高度显然是固定的a reported bug。所以我使用目标SDK版本15并能够设置所需的操作栏高度,但图标为left aligned

用于活动的样式

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

<style name="ActionBarTabStyle" parent="@style/Widget.AppCompat.ActionBar.TabView">
    <item name="android:minHeight">200dip</item>
    <item name="android:padding">20dip</item>
    <item name="android:gravity">center</item>
</style>

活动代码

public class MainActivity extends FragmentActivity implements ActionBar.TabListener 
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final ActionBar actionBar = getActionBar();
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    mSectionsPagerAdapter = new SectionsPagerAdapter(
            getSupportFragmentManager());
    mViewPager = (ViewPager) findViewById(R.id.pager);
    mViewPager.setAdapter(mSectionsPagerAdapter);
    mViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
                @Override
                public void onPageSelected(int position) {
                    actionBar.setSelectedNavigationItem(position);
                }
            });
    for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
        actionBar.addTab(actionBar.newTab().setIcon(tabsIcons[i])
                .setTabListener(this));
    }
    actionBar.setDisplayOptions(ActionBar.DISPLAY_USE_LOGO);
}

tldr:我想将操作栏中的可滑动标签图标居中对齐自定义高度,sdk版本&lt; 16让我更改高度但不能对齐。版本&gt; 16正确对齐图标但不能有自定义高度。

0 个答案:

没有答案