如何使用片段中的按钮更改View Pager中的片段



我有一个名为RegisterActivity的Activity,我正在实现包含两个片段的ViewPager。这是的活动代码

public class RegisterActivity extends AppCompatActivity{
private Context context;
private Toolbar toolbar;
private TabLayout tabLayout;
public static ViewPager viewPager;
private ViewPagerAdapter adapter;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
context = RegisterActivity.this;
viewPager = findViewById(R.id.viewpager);
setupViewPager(viewPager);
tabLayout = findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
}
private void setupViewPager(ViewPager viewPager) {
adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new FragmentOne(), "Step 1");
adapter.addFragment(new FragmentTwo(), "Step 2");
viewPager.setAdapter(adapter);
}
class ViewPagerAdapter extends FragmentPagerAdapter {
private final List<Fragment> fragmentList = new ArrayList<>();
private final List<String> fragmentTitleList = new ArrayList<>();
public ViewPagerAdapter(FragmentManager manager) {
super(manager);
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
public void addFragment(Fragment fragment, String title) {
fragmentList.add(fragment);
fragmentTitleList.add(title);
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return fragmentTitleList.get(position);
}
}

}

片段一有一个NEXT按钮。当按下此按钮时,我希望视图寻呼机滚动到FragmentTWo。同样,FragmentTwo有一个BACK按钮,当按下BACK按钮(出现在FragmentTwo布局中(时,我希望视图寻呼机滚动到fragmentOne。

RegisterActivity.viewpager.setCurrentItem(片段的位置(;

//点击你所在片段中的按钮,你只需要具体说明片段在寻呼机适配器中的位置

最新更新