Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.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 Viewpager - Fatal编程技术网

Android 为什么我的ViewPager会崩溃?

Android 为什么我的ViewPager会崩溃?,android,android-viewpager,Android,Android Viewpager,我的项目中有25张图片,我的第一个活动中有一个按钮。单击此按钮时我希望我的应用程序显示25的第一张图片,然后我想滑动以更改我的图片 这是我的PagerAdapter: public class ImageAdapter extends PagerAdapter { Context context; private int[] GalImages = new int[] { R.drawable.one, R.drawable.two

我的项目中有25张图片,我的第一个
活动中有一个
按钮
。单击此
按钮时
我希望我的应用程序显示25的第一张图片,然后我想滑动以更改我的图片

这是我的
PagerAdapter

public class ImageAdapter extends PagerAdapter {
    Context context;
    private int[] GalImages = new int[] {
            R.drawable.one,
            R.drawable.two,
            R.drawable.three
    };

    ImageAdapter(Context context) {
        this.context = context;
    }

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

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

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        ImageView imageView = new ImageView(context);
        int padding = context.getResources().getDimensionPixelSize(R.dimen.padding_medium);
        imageView.setPadding(padding, padding, padding, padding);
        imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
        imageView.setImageResource(GalImages[position]);
        ((ViewPager) container).addView(imageView, 0);
        return imageView;
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        ((ViewPager) container).removeView((ImageView) object);
    }
}
然后创建xml文件并在布局中添加
ViewPager

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

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

</RelativeLayout>
一切都很好,但当我的应用程序到达25张图片中的第20张时,会出现以下错误:

不幸的是,3号展厅已经停止了

请看这里:

我发现一些图片非常大,所以出现了这个错误,当我删除它们时,应用程序现在很好。。。。。。。 反正不是别的吗??
我不想删除我的图片

LogCat错误报告将帮助您使用图像..可能是它的OutofMemory..请格式化您的代码
public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager);
        ImageAdapter adapter = new ImageAdapter(this);
        viewPager.setAdapter(adapter);
    }

}