Skip to content Skip to sidebar Skip to footer

Loading Images From SD Card To ViewPager Android

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;

Solution 1:

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

Try below code:

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

TouchImageAdapter class:

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;

}

Hope this helps!


Post a Comment for "Loading Images From SD Card To ViewPager Android"