Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何将片段添加到ViewPager?_Android_Android Fragments_Android Viewpager - Fatal编程技术网

Android 如何将片段添加到ViewPager?

Android 如何将片段添加到ViewPager?,android,android-fragments,android-viewpager,Android,Android Fragments,Android Viewpager,我有一个SplashScreen,它是一个ViewPager,我需要在点击时将登录片段添加到其中 这是我的PagerAdapter: public class SplashSAdapter extends PagerAdapter { Context ssContext; Activity _activity; private int[] ssImages = new int[] { R.drawable.splashscreen1,R.drawable.splashs

我有一个SplashScreen,它是一个ViewPager,我需要在点击时将登录片段添加到其中

这是我的PagerAdapter:

public class SplashSAdapter extends PagerAdapter {

    Context ssContext;
    Activity _activity;
    private int[] ssImages = new int[] { R.drawable.splashscreen1,R.drawable.splashscreen2, R.drawable.splashscreen3 };

    public SplashSAdapter(Context ssContext, Activity activity) {
        this.ssContext = ssContext;
        this._activity = activity;
    }

    @Override
    public int getCount() {
        return ssImages.length;
    }

    @Override
    public boolean isViewFromObject(View ssView, Object ssObject) {
        return ssView == ((ImageView) ssObject);
    }

    @Override
    public Object instantiateItem(ViewGroup ssContainer, int ssPosition) {
        ImageView ssImageView = new ImageView(ssContext);
        ssImageView.setScaleType(ImageView.ScaleType.FIT_XY);
        ssImageView.setImageResource(ssImages[ssPosition]);
        ((ViewPager) ssContainer).addView(ssImageView, 0);
        ssImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View arg0) {
                onClickSplashScreen();
            }
        });

        return ssImageView;
    }

    @Override
    public void destroyItem(ViewGroup ssContainer, int ssPosition,
            Object ssObject) {
        ((ViewPager) ssContainer).removeView((ImageView) ssObject);
    }

    public void onClickSplashScreen(){
}
那么,在SplashScreen上,我如何在那里添加一个片段呢

FragmentManager fragmentManager = this._activity.getSupportFragmentManager()
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
ExampleFragment fragment = new ExampleFragment();
fragmentTransaction.add(R.id.fragment_container, fragment);
fragmentTransaction.commit();

这对您有帮助吗?

您应该使用FragmentPagerAdapter而不是PagerAdapter

这里可以找到一些例子

ViewPager是一种允许用户从一个视图滑动到另一个视图的视图。我觉得你应该打开一个新的活动进行登录,然后关闭这个活动。或者将拥有viewpager的片段替换为登录片段。