繁体   English   中英

使用viewpager显示图像

[英]Show images using viewpager

我正在使用viewpager从可绘制文件夹中显示图像名为:a1 a2 a3 ...到a700的图像所以我使用此代码来获取viewpager中的所有图像

mImages=new int[700];
    for (int i = 0; i < 700; i++) {
        mImages[i] = getResources()
            .getIdentifier("a"+i, "drawable",     getPackageName());    }

            ImagePagerAdapter   adapter =     new ImagePagerAdapter();
    viewPager.setAdapter(adapter);

它可以正常工作并显示所有图像,但是当我使用此代码时,viewpager中没有第一张图像。 如何从ViewPager中的A1开始

这是适配器

private class ImagePagerAdapter         extends PagerAdapter {

    @Override
    public int getCount() {
        return mImages.length;
    }
    public int getImageId(int pos){return mImages[pos];}
    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view == ((ImageView) object);
    }
    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        ((ViewPager) container).removeView((ImageView) object);
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {


        Context context = MainActivity.this;
        final  TouchImageView imageView = new TouchImageView(context);



        int padding = context.getResources().getDimensionPixelSize(
            R.dimen.padding_medium);
        imageView.setPadding(padding, padding, padding, padding);
        imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
        imageView.setImageResource(mImages[position]);



        ((ViewPager) container).addView(imageView, 0);

        return imageView;

}

我在主要活动中使用这个角色

public class MainActivity extends    Activity {
 ViewPager  viewPager;
  public int[] mImages = new int[]{
R.drawable.startpic};

尝试

mImages=new int[700];
for (int i = 0; i < 700; i++) {
    mImages[i] = getResources()
        .getIdentifier("a"+ (i + 1), "drawable",     getPackageName());    }

        ImagePagerAdapter   adapter =     new ImagePagerAdapter();
viewPager.setAdapter(adapter);

您没有名为a0的图像,因此请确保您没有从a0开始。 根据您当前的逻辑,我认为您最后也将缺少a700(您的for循环仅在我为699时进入)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM