PagerTabStrip onglets alignement à gauche

Je suis en utilisant PagerTabStrip pour définir coulissantes onglets. Cependant, lorsque j'ai mis trois onglets, il montre le premier onglet dans le centre de sorte que les utilisateurs ne peuvent pas voir tous les trois onglets au premier coup d'œil.

Comment puis-je les aligner à gauche?

PagerTabStrip onglets alignement à gauche

Je veux déplacer les onglets à gauche de ce genre.

PagerTabStrip onglets alignement à gauche

J'ai essayé de gravité, mais pas de chance.

pagerTabStrip.setGravity(Gravity.LEFT);

C'est le code pour 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);
}

Et

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];
    }

}

Le Problème Est Résolu!!

Vous devez télécharger la dernière codes à partir de github à la place de google developer page.

SlidingTabLayout.java

SlidingTabStrip

Ensuite, vous pouvez utiliser setDistributeEvenly(vrai) comme ceci.

@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);
}
  • poster votre code...
  • désolé, j'ai mis à jour la question.
  • Il s'est avéré que je peux utiliser SlidingTabLayout avec quelques ajustements. stackoverflow.com/questions/26803835/...
  • Mise à JOUR: La meilleure façon est d'utiliser sliding_tabs.setDistributeEvenly(true); au lieu de la solution ci-dessus.
  • Hé!!!! Mais je suis en utilisant Pagertabstrip ne pas glisser tablayout. Comment y parvenir dans pagertabstrip??
InformationsquelleAutor Non Umemoto | 2014-12-20