Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
160 views
in Technique[技术] by (71.8m points)

android - How to select next tab from child fragment

I need to switch next tab, when a button is clicked from a child fragment.

This is how I setup tabs in parent,

TabAdapter adapter;

private void setUpTabs(ViewPager viewPager) {

    adapter = new TabAdapter(getSupportFragmentManager());
    adapter.addFragment(new FirstTabFragment(), "First Tab");
    adapter.addFragment(new SecondTabFragment(), "Second Tab");
    viewPager.setAdapter(adapter);

}

And my TabAdapter class is,

public class TabAdapter extends FragmentPagerAdapter {
    private final List<Fragment> mFragmentList = new ArrayList<>();
    private final List<String> mFragmentTitleList = new ArrayList<>();

    public TabAdapter(FragmentManager manager) {
        super(manager);
    }

    @Override
    public Fragment getItem(int position) {
        return mFragmentList.get(position);
    }

    @Override
    public int getCount() {
        return mFragmentList.size();
    }

    public void addFragment(Fragment fragment, String title) {
        mFragmentList.add(fragment);
        mFragmentTitleList.add(title);
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return mFragmentTitleList.get(position);
    }
}

I created a method to switch tab inside Parent

TabLayout myTabs= (TabLayout) findViewById(R.id.my_tabs);

Button chkBtn = (Button) findViewById(R.id.check_button);

chkBtn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        viewPager.setCurrentItem(1);
    }
});

Switching tabs inside parent class works fine. But how could I Do the same inside FirstTabFragment, Please help me.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You should call

viewPager.setCurrentItem(fragmentIdex);


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...