Android ImageView - 如何使用下载的图像更新显示的图像

时间:2015-03-16 08:15:48

标签: android

我实际上想知道这是否可行:基本上我希望能够让用户能够个性化按钮的外观。现在我使用带有图标的ImageViews并让onClickListener()做一些事情。如果用户想要按钮的不同图像,我有一个API,允许用户下载新图像。

1)Activity使用ImageView,并使用setImageResource

设置显示的图像
ImageView imgView = ...findViewById(R.id.imageView1)
String imgName = sqlData.getImageName();
int resId = context.getResources().getIdentifier(imgName, "drawable", 
      context.getPackageName());
imgView.setImageResource(resId);

2)用户下载新图像并将其保存在手机上。

3)新图像名称保存在sqlite

sqlData.setImageName("new_image.png");

4)如何使用setImageResource再次显示新图像

1 个答案:

答案 0 :(得分:0)

在项目中添加Universal Image Loader库并使用此方法:

ImageLoader.getInstance().displayImage(image_url, imageViewPic, options, new ImageLoadingListener() {

        @Override
        public void onLoadingStarted(String arg0, View arg1) {
            // TODO Auto-generated method stub
        }

        @Override
        public void onLoadingFailed(String arg0, View arg1, FailReason arg2) {
            // TODO Auto-generated method stub
        }

        @Override
        public void onLoadingComplete(String arg0, View arg1, Bitmap arg2) {
            // TODO Auto-generated method stub
        }

        @Override
        public void onLoadingCancelled(String arg0, View arg1) {
            // TODO Auto-generated method stub
        }
    });

在onLoadingComplete()方法中,再次将图像设置为imageView 选项值是:

DisplayImageOptions options;
options = new DisplayImageOptions.Builder()
    .showImageOnLoading(R.drawable.calenderback)
    .showImageForEmptyUri(R.drawable.ic_empty)
    .showImageOnFail(R.drawable.ic_error)
    .cacheInMemory(true)
    .cacheOnDisk(true)
    .considerExifParams(true)
    .bitmapConfig(Bitmap.Config.RGB_565)
    .build();