【问题标题】:Implementing getStreamFromPOtherSource() to handle Exceptions实现 getStreamFromPOtherSource() 来处理异常
【发布时间】:2018-10-02 15:49:18
【问题描述】:

我在我目前正在开发的新闻应用程序中使用Android Universal Image loader。我正在使用NewsAPI 获取新闻。从网站解析 JSON 后。我使用自定义适配器填充列表视图,并使用通用图像加载器在后台获取图像。但是对于某些图片UIL doesn't support scheme(protocol) by default [null].You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))会显示异常。

我认为在某些图像中,URI 不是库所期望的格式。

所以我的问题是如何填充图像的位置,这给了我来自可绘制文件夹中的图片的错误。 (404图片表示无法下载图片)

我找到了我应该把代码放在哪里。

protected InputStream getStreamFromOtherSource(String imageUri, Object extra) throws IOException { throw new UnsupportedOperationException(String.format("UIL doesn't support scheme(protocol) by default [%s]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))", new Object[]{imageUri})); }

如果图像不可下载,我需要知道我应该放什么类型的代码来从我的可绘制文件中放置一个 404 图像。

【问题讨论】:

    标签: java android universal-image-loader


    【解决方案1】:

    兄弟.. 你可以使用Piccasso android 图像库。它可以解决您的问题。

    示例代码:

    if(!image.equals("default")){
    
    
                    Picasso.with(Profile.this).load(image).networkPolicy(NetworkPolicy.OFFLINE)
                            .placeholder(R.drawable.default).into(mDisplayImage, new Callback() {
                        @Override
                        public void onSuccess() {
    
                        }
    
                        @Override
                        public void onError() {
                            Picasso.with(Profile.this).load(image).placeholder(R.drawable.default).into(mDisplayImage);
    
                        }
                    });
    

    }

    这里它可以替换默认的(即)404找到的图像,而错误条件

    还有一个小建议,您可以使用Easy News Library 来简单地从 NewsAPI 中检索新闻。这里我们不需要解析 JSON。它通过单个方法调用给出数据

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-11
      • 1970-01-01
      • 2011-06-06
      • 1970-01-01
      • 1970-01-01
      • 2013-10-07
      • 2016-10-31
      • 1970-01-01
      相关资源
      最近更新 更多