将图像从SD卡加载到ViewPager Android [英] Loading Images from SD card to ViewPager Android

查看:136
本文介绍了将图像从SD卡加载到ViewPager Android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要将SD卡中的文件夹中的图像加载到ViewPager中.这是我到目前为止所完成的.

I need to Load Images from a folder in SD Card into a ViewPager. This is what i have managed so far.

public Drawable getImageFromSdCard(String imageName) {
    Drawable d = null;
    try {
        String path = Environment.getExternalStorageDirectory().toString()
                + "/YourSubDirectory/";
        Bitmap bitmap = BitmapFactory.decodeFile(path + "/" + imageName
                + ".png");
        d = new BitmapDrawable(bitmap);
    } catch (IllegalArgumentException e) {
        // TODO: handle exception
    }
    return d;

}

如何将其设置为ViewPager?

How can i set this as a ViewPager ?

推荐答案

您需要制作扩展了PagerAdapter的适配器,然后将适配器设置为查看寻呼机

You need make adapter that extends PagerAdapter then set adapter to view pager

尝试以下代码:

ViewPager mViewPager = (ViewPager) findViewById(R.id.view_pager);
mViewPager.setAdapter(new TouchImageAdapter());

TouchImageAdapter类:

class TouchImageAdapter extends PagerAdapter {


        @Override
        public int getCount() {
            return 1;
        }

        @Override
        public View instantiateItem(ViewGroup container, int position) {
            ImageView img = new ImageView(container.getContext());
            img.setImageDrawable(getImageFromSdCard(filename));
            container.addView(img, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
            return img;
        }

        public int getItemPosition(Object object) {
            return POSITION_NONE;
        }

        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            container.removeView((View) object);
        }

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


    }

这是您在适配器类中使用的方法

Here is your method used in adapter class

public Drawable getImageFromSdCard(String imageName) {
    Drawable d = null;
    try {
        String path = Environment.getExternalStorageDirectory().toString()
                + "/YourSubDirectory/";
        Bitmap bitmap = BitmapFactory.decodeFile(path + "/" + imageName
                + ".png");
        d = new BitmapDrawable(bitmap);
    } catch (IllegalArgumentException e) {
        // TODO: handle exception
    }
    return d;

}

希望这会有所帮助!

这篇关于将图像从SD卡加载到ViewPager Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆