更新时间:2023-01-10 11:27:54
这绝对是可能的.您只需要为 viewpager 使用子片段.除此之外,实现很简单.创建自定义寻呼机适配器,使用标准的 viewpager api
This is definitely possible. You just need to use child fragments for the viewpager. Other than that the implementation is straightforward. Create a custom pager adapter, use the standard viewpager api
像这样扩展 FragmentPagerAdapter:
Extend FragmentPagerAdapter like so:
private class MyPagerAdapter extends FragmentPagerAdapter
{
public MyPagerAdapter (FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int i) {
switch (i) {
case 0:
return Fragment1;
case 1:
return Fragment2;
}
}
@Override
public int getCount() {
return 2;
}
@Override
public CharSequence getPageTitle(int position) {
switch (position) {
case 0:
return FRAGMENT_1_NAME;
case 1:
return FRAGMENT_2_NAME;
}
}
当然,你需要一个带有 viewpager 的布局,然后确保在 Fragment A 中像这样连接它:
You'll need an layout with a viewpager of course, then just make sure to hook it up like this in Fragment A:
myPagerAdapter = new MyPagerAdapter(this.getChildFragmentManager());
myPager = (ViewPager) mRoot.findViewById(R.id.pager);
myPager.setAdapter(myPagerAdapter);
请注意,除非您的最低 SDK 为 4.2 或更高版本,否则您将需要使用支持库和支持片段,因为子片段是 API 17
Note that you'll need to use the support library and support fragments unless your minimum SDK is 4.2 or higher, since the child fragments are API 17