gpt4 book ai didi

android - PagerTabStrip 选项卡向左对齐

转载 作者:IT老高 更新时间:2023-10-28 23:34:25 27 4
gpt4 key购买 nike

我正在使用 PagerTabStrip 设置滑动标签。但是,当我设置三个选项卡时,它会在中心显示第一个选项卡,因此用户第一眼看不到所有三个选项卡。

如何将它们左对齐?

enter image description here

我想像这样将标签向左移动。

enter image description here

我尝试了重力,但没有运气。

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 下载最新的代码,而不是从谷歌开发者页面。

SlidingTabLayout.java

SlidingTabStrip

然后,您可以像这样使用 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);
}

最佳答案

在 setViewPager() 之前使用这个:

sliding_tabs.setDistributeEvenly(true);

如果您收到此错误Cannot resolve method 'setDistributeEvenly(boolean)',您应该从 Google I/O 源代码更新您的 SlidingTabLayout.java 和 SlidingTabStrip.java:

SlidingTabLayout.java

SlidingTabStrip

关于android - PagerTabStrip 选项卡向左对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27577667/

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