热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何将URL中的图像加载到viewpager中

如何解决《如何将URL中的图像加载到viewpager中》经验,为你挑选了1个好方法。

我在互联网上搜索了这个问题,我找不到任何好的东西.我确实在Android开发者网站上查看,但他们将URL中的图像加载到ImageView中.

这是我的代码:

Openfactsscreen活动:

public class Openfactsscreen extends Activity {




    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_openfactsscreen); 

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

        public void openmenu(View view){
        Intent intent = new Intent(this, SendFact.class);
        startActivity(intent); }



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.openfactsscreen, menu);
        return true;
 }

}

ImageAdapter.java:

public class ImageAdapter extends PagerAdapter {

        Context context;
        private int[] GalImages = new int[] {
        R.drawable.factcard2,
        R.drawable.factcard8,
        R.drawable.factcard4
        };



        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);
        }


}

activity_openfactsscreen:

    

    

    

    

    


一切正常,如果有人知道一个好的网站,或者如果有人想帮助我,这将是伟大的!

无论如何,谢谢你的时间,美好的一天!



1> Muthu..:

在你的课程结束时加上这个

public class ImageAdapter extends PagerAdapter {

        Context context;
        private int[] GalImages = new int[] {
        R.drawable.factcard2,
        R.drawable.factcard8,
        R.drawable.factcard4
        };



        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]);

        new LoadImage(imageView).execute("Your URL");

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

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



     private class LoadImage extends AsyncTask {
            ImageView img=null;
            public LoadImage(ImageView img){
                this.img=img;
            }
            @Override
            protected void onPreExecute() {
                super.onPreExecute();

            }
            protected Bitmap doInBackground(String... args) {
                Bitmap bitmap=null;
                try {
                    bitmap = BitmapFactory.decodeStream((InputStream)new URL(args[0]).getContent());
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return bitmap;
            }
            protected void onPostExecute(Bitmap image) {
                if(image != null){
                    img.setImageBitmap(image);
                }
            }
        }`
     } 


推荐阅读
author-avatar
坏尐骇MB_549
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有