如何使用片段动态创建ViewPager?

时间:2012-06-12 13:48:06

标签: android android-fragments android-viewpager

如何动态创建PagerView?不使用xml?假设我有一个像这样的xml布局:

<FrameLayout android:id="@+id/a_frame_for_pagerview"
             ... >

<!-- I WANT MY PAGERVIEW HERE BUT DYNAMICALLY, NO XML -->

</FrameLayout>

它不需要是FrameLayout,只是使用它,因为我认为会是这种情况。

感谢您的帮助。

编辑:

我的主要问题是我有太多的寻呼机由于内存而崩溃,我希望它们被丢弃,但即使我删除寻呼机所在的片段,它仍然引用旧的寻呼机(从第一次开始)创建片段)所有片段都被销毁,所以没有任何片段出现。

1 个答案:

答案 0 :(得分:3)

你可以用:

在您的XML中:

<android.support.v4.view.ViewPager
    android:id="@+id/viewPager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    />

在你的照片中:

[....]
mViewPager.setAdapter(new MyFragmentAdapter(getFragmentManager()));
[....]
public class MyFragmentAdapter extends FragmentPagerAdapter{

    public MyFragmentAdapter(FragmentManager fm) {
        super(fm);
        // TODO Auto-generated constructor stub
    }

    @Override
    public Fragment getItem(int arg0) {
        // TODO Auto-generated method stub
        YourClassFragment fragment = new YourClassFragment();  
        Bundle args = new Bundle();  

        args.putParcelable("EXTRA_DATA", "VALUE");  
        fragment.setArguments(args);  

        return fragment;  
    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return yourNumberOfFragment;
    }

}