如何在app.Fragment中使用v4.ViewPager

时间:2015-07-11 12:13:58

标签: android android-fragments

我是android的初学者,不知道如何使用android.support.v4.view.ViewPager 使用android.app.Fragment并且我不想使用support.v4.app.Fragment 你能建议我如何工作,我应该使用哪个库来实现这个功能

1 个答案:

答案 0 :(得分:0)

如果你想使用android.app.Fragment,你需要从android api 17配置android版本最小化。

var dataSource: [[Dictionary<String, String>]] = [[], []]

当您使用适用于viewpager的Adapter时,它应该来自android.support.v13 以下是适配器的示例:

defaultConfig {
        ...
        minSdkVersion 17
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
        ...
    }

当您为viewpager创建适配器并设置时,它应该是getFragmentManager()而不是getSupportedFragmentManager()

import android.app.Fragment;
import android.app.FragmentManager;
import android.support.v13.app.FragmentStatePagerAdapter;
import java.util.List;

public class MyPagerAdapter extends FragmentStatePagerAdapter {

    private FragmentManager fragmentManager;
    private List<String> dataList;

    public MyPagerAdapter (FragmentManager fragmentManager, List<String> dataList) {
        super(fragmentManager);
        this.fragmentManager = fragmentManager;
        this.dataList = dataList;
    }

    @Override
    public int getCount() {
        if (dataList != null) {
            return dataList.size();
        }
        return 0;
    }

    @Override
    public Fragment getItem(int position) {
        if (dataList != null && dataList.size() > 0 && position < dataList.size()) {
            String str = dataList.get(position);

            return YourFragment.newInstance(str);
        }

        return null;
    }
}