【问题标题】:Show indeterminate ProgressBar while loading image with Universal Image Loader使用 Universal Image Loader 加载图像时显示不确定的 ProgressBar
【发布时间】:2012-11-19 04:21:09
【问题描述】:

我想知道在使用通用图像加载器加载图像时,是否有一种机制可以显示旋转的“不确定”进度条来代替图像。

现在我正在使用 DisplayImageOptions 中的 showStubImage() 选项来显示一个在下载图像时显示“无图像”的图像,但如果顶部有一个旋转的不确定 ProgressBar,看起来会非常漂亮图片下载时的 ImageView。

【问题讨论】:

    标签: universal-image-loader


    【解决方案1】:

    For reference

    final View imageLayout = inflater.inflate(R.layout.item_pager_image, null);
    final ImageView imageView = ...
    final ProgressBar spinner = ...
    
    imageLoader.displayImage(images[position], imageView, options, new SimpleImageLoadingListener() {
        @Override
        public void onLoadingStarted(String imageUri, View view) {
            spinner.setVisibility(View.VISIBLE);
        }
    
        @Override
        public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
            spinner.setVisibility(View.GONE);
        }
    
        @Override
        public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
            spinner.setVisibility(View.GONE);
        }
    });
    

    【讨论】:

    【解决方案2】:

    我正在发布用于从网络下载图像的网格适配器类代码。您必须声明一个带有一个imageview 和两个textviews 的网格布局。将字符串数组传递给适配器。

    @Override
    public View getView(final int position, View convertView, ViewGroup parent)
    {
        // TODO Auto-generated method stub
        LayoutInflater inflater = (LayoutInflater) parent.getContext().getSystemService(activity.LAYOUT_INFLATER_SERVICE);
        //LayoutInflater inflator = activity.getLayoutInflater();
        if(convertView==null)
        {
            view = new ViewHolder();
            convertView = inflater.inflate(R.layout.grid_layout, null);
            view.txtViewTitle = (TextView) convertView.findViewById(R.id.title);
            view.txtViewSubTitle = (TextView) convertView.findViewById(R.id.subTitle);
            view.imgViewFlag = (ImageView) convertView.findViewById(R.id.imageView1);
            convertView.setTag(view);
        }
        else
        {
            view = (ViewHolder) convertView.getTag();
        }
    
        view.txtViewTitle.setText(listTitle.get(position));
        view.txtViewSubTitle.setText(listSubTitle.get(position));
    
        //For Picasso
     /*   Picasso.with(parent.getContext())
                .load("http://www.radioarpan.com/upload_images/138630281911.jpg")
                .placeholder(R.mipmap.paceholder)
                .error(R.mipmap.error_page_logo)
                .noFade().resize(125,165)
                .centerCrop()
                .into(view.imgViewFlag);*/
    
    
    
        ImageLoader imageLoader = ImageLoader.getInstance();
        DisplayImageOptions.Builder options = new DisplayImageOptions.Builder().cacheInMemory(true)
                .cacheOnDisc(true).resetViewBeforeLoading(true)
                .showImageForEmptyUri(R.mipmap.paceholder)
                .showImageOnFail(R.mipmap.error_page_logo);
    
    
        final ProgressBar spinner =  new ProgressBar(activity, null, android.R.attr.progressBarStyleSmall);
    //download and display image from url
          imageLoader.displayImage("http://www.radioarpan.com/upload_images/138630281911.jpg", view.imgViewFlag,new SimpleImageLoadingListener()
       {
           @Override
           public void onLoadingStarted(String imageUri, View view)
           {
               spinner.setVisibility(View.VISIBLE);
           }
    
           @Override
           public void onLoadingFailed(String imageUri, View view, FailReason failReason)
           {
               spinner.setVisibility(View.GONE);
           }
    
           @Override
           public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage)
           {
               spinner.setVisibility(View.GONE);
           }
       });
    

    【讨论】:

    • 我不知道如何在此处适当地放置代码。对于上次发布的格式非常抱歉
    猜你喜欢
    • 2020-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-19
    • 2016-12-13
    • 2013-07-15
    • 1970-01-01
    • 2014-07-22
    相关资源
    最近更新 更多