我使用PagerTabStrip设置滑动选项卡。但是,当我设置三个选项卡时,它会显示中心的第一个选项卡,这样用户第一眼就无法看到所有三个选项卡。
我怎么才能把它们与左边对齐?

我想像这样把标签移到左边。

我试过地心引力,但没有运气。
pagerTabStrip.setGravity(Gravity.LEFT);这是MainActivity的代码。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ViewPager viewPager = (ViewPager) findViewById(R.id.pager);
PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.pager_tab_strip);
FragmentPagerAdapter fragmentPagerAdapter = new MyFragmentPagerAdapter(
getSupportFragmentManager());
viewPager.setAdapter(fragmentPagerAdapter);
pagerTabStrip.setGravity(Gravity.LEFT);
}和
MyFragmentPagerAdapter extends FragmentPagerAdapter {
private final String[] pageTitle = { "Entry", "History", "Report" };
public MyFragmentPagerAdapter(FragmentManager fragmentManager) {
super(fragmentManager);
}
@Override
public Fragment getItem(int position) {
Fragment fragment = new PageFragment();
Bundle arguments = new Bundle();
arguments.putString("pageIndex", Integer.toString(position + 1));
fragment.setArguments(arguments);
return fragment;
}
@Override
public int getCount() {
return pageTitle.length;
}
@Override
public CharSequence getPageTitle(int position) {
return pageTitle[position];
}
}问题解决了!!
您需要从github下载最新代码,而不是从页面下载。
然后,您可以像这样使用setDistributeEvenly(true)。
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
// Get the ViewPager and set it's PagerAdapter so that it can display items
mViewPager = (ViewPager) view.findViewById(R.id.viewpager);
FragmentManager fragmentManager = getFragmentManager();
MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(fragmentManager);
mViewPager.setAdapter(adapter);
// Give the SlidingTabLayout the ViewPager, this must be done AFTER the ViewPager has had
// it's PagerAdapter set.
mSlidingTabLayout = (SlidingTabLayout) view.findViewById(R.id.sliding_tabs);
mSlidingTabLayout.setDistributeEvenly(true);
mSlidingTabLayout.setViewPager(mViewPager);
}发布于 2015-01-07 06:40:54
在setViewPager()之前使用它:
sliding_tabs.setDistributeEvenly(true);如果您收到此错误Cannot resolve method 'setDistributeEvenly(boolean)',您应该从Google /O源代码中更新SlidingTabLayout.java和SlidingTabStrip.java:
https://stackoverflow.com/questions/27577667
复制相似问题