有信息无法使用ViewPager
在一个Fragment
在许多来源中,例如“Android 开发者繁忙编码指南 http://commonsware.com” 作者:Mark Murphy,或者类似的帖子this https://stackoverflow.com/questions/7700226/display-fragment-viewpager-within-a-fragment/就这样。我很困惑,因为我没有这样的问题,而且我成功使用了ViewPager
在我的内Fragment
。唯一的区别是我实例化了一个ViewPager
not in onCreateView()
方法但在onActivityCreated()
。一切都运行得很好。
所以问题是 - 可能我只是不知道一些东西,并且出于某种原因不建议这样做来进行 UI 实例化onActivityCreated()
?但话又说回来——一切都很好。
以下是类和 xml 的列表:
Class:
public class ViewPagerFragment extends Fragment {
static final int NUM_ITEMS = 2;
private ViewPagerAdapter mAdapter;
private ViewPager mPager;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.view_pager_fragment, container, false);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
mAdapter = new ViewPagerAdapter(getFragmentManager());
mPager = (ViewPager) getView().findViewById(R.id.pager);
mPager.setAdapter(mAdapter);
}
public static class ViewPagerAdapter extends FragmentPagerAdapter {
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int num) {
if (num == 0) {
return new ItemsListFragment();
} else {
return new FavsListFragment();
}
}
@Override
public int getCount() {
return NUM_ITEMS;
}
}
}
Layout:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
</LinearLayout>
要在片段中实现视图分页器,请使用getChildFragmentManager()代替获取FragmentManager()。您可以致电设置适配器()对于 ViewPager 来自onCreateView() or onViewCreated(),那不是问题。
我希望这会对你们有所帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)