Android PICASSO - 图像未加载到 ImageView + 停止发生以下所有语句

2023-12-26

背景:我的 java 文件中有一个 Picasso 语句,它读取 JSON,然后将该数据格式化到屏幕上。问题:读取 JSON 后,Picasso 不会将图像从 URL 加载到 ImageView,而是停止此后发生的所有语句,例如在 TextView 中设置文本

我正在阅读的 JSON:

{  
   "coord":{  
      "lon":139.01,
      "lat":35.02
   },
   "weather":[  
      {  
         "id":800,
         "main":"Clear",
         "description":"clear sky",
         "icon":"01n"
      }
   ],
   "base":"stations",
   "main":{  
      "temp":285.514,
      "pressure":1013.75,
      "humidity":100,
      "temp_min":285.514,
      "temp_max":285.514,
      "sea_level":1023.22,
      "grnd_level":1013.75
   },
   "wind":{  
      "speed":5.52,
      "deg":311
   },
   "clouds":{  
      "all":0
   },
   "dt":1485792967,
   "sys":{  
      "message":0.0025,
      "country":"JP",
      "sunrise":1485726240,
      "sunset":1485763863
   },
   "id":1907296,
   "name":"Tawarano",
   "cod":200
}

我可以检索数据并将该数据打印到 TextView,没有任何问题,并且一切正常。下面的代码是我检索数据的方式:

                JSONObject jo = new JSONObject(data);
                JSONObject main_object = jo.getJSONObject("main");
                JSONArray array = jo.getJSONArray("weather");
                JSONObject object = array.getJSONObject(0);
                String icon = object.getString("icon");
                String temp = String.valueOf(main_object.getDouble("temp"));
                String description = object.getString("description");
                String city = jo.getString("name");

因此,在格式化 temp、description 和 city 时,我没有任何问题。注意:我在活动中使用片段和文件来获取数据,然后格式化片段中的文本视图等,如下所示:

Tab1Fragment.txtCelcius.setText(temp);

当我使用 Picasso 尝试获取 JSON 中的“icon”值(即“01n”)时,就会出现问题。我根本无法加载图像,不仅如此,所有其他进程都会终止?

例如:

Tab1Fragment.txtCelcius.setText(temp);  


Picasso.get().load("http://openweathermap.org/img/w/01d.png").into(Tab1Fragment.weatherIcon);
Tab1Fragment.txtCity.setText(city);

“temp”将设置为txtCelcius的文本,但Picasso不会加载URL并设置imageview,并且“name”语句也不会运行,但是,如果我评论Picasso行,它会运行。

I use

String iconUrl = "http://openweathermap.org/img/w/"+icon+".png";

Then

 Picasso.get().load(iconUrl).into(Tab1Fragment.weatherIcon);

正如我所读到的,这是完成我的任务的最佳方式,但有些东西不起作用,我看不出到底是什么?我看到的 Picasso 语法很好,并且在 logcat 等中没有看到任何错误。

感谢所有帮助。

编辑:声明了 ImageView 的 Tab1Fragment 代码

weatherIcon = (ImageView) rootView.findViewById(R.id.imageView);

将其用于旧图书馆:-

(implementation 'com.squareup.picasso:picasso:2.5.2')

Picasso.with(this).load(iconUrl).into(Tab1Fragment.weatherIcon);

代替 : 对于新图书馆

(implementation 'com.squareup.picasso:picasso:2.71828')

Picasso.get().load(iconUrl).into(Tab1Fragment.weatherIcon);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android PICASSO - 图像未加载到 ImageView + 停止发生以下所有语句 的相关文章

随机推荐

  • 加密和解密 iOS/Node.js 安全查询

    我目前在两个平台上使用 AES128 以及我的代码answer https stackoverflow com a 27893935 2977578 注意 我对代码进行了一些更改 以偏离使用 IV 因为我认为这对于我的应用程序来说有点过分了
  • Pandas:将每小时值重新采样为带有偏移量的每月值

    我想聚合一个pandas Series每小时DatetimeIndex到每月值 同时考虑到午夜的偏移 Example 考虑以下跨度约为 1 5 个月的 统一 时间序列 import pandas as pd hours pd Series
  • Google Maps API 永远不会满足

    如果我将 URL 引荐来源网址身份验证与地理编码 API 结合使用 它会显示 There was an error while trying to fix the Venues geolocation information API key
  • python telebot 得到了意想不到的响应

    我一直在使用我的 Telegram 机器人使用 python 的远程机器人库从我的台式计算机向我发送不同的通知 很长一段时间一切都正常工作 但有一天它停止工作了 这是代码 Python 2 7 import telebot import s
  • 在 Safari 中检测 iOS 上的初始设备方向

    我知道怎么做检测设备方向变化 https developer apple com library safari documentation SafariDOMAdditions Reference DeviceOrientationEven
  • OSGI捆绑异常,maven依赖问题

    我对 OSGI Felix 和 Maven 还很陌生 刚刚开始使用 我正在通过 jenkins 部署 java 构建 并且遇到以下依赖问题 下面是包含依赖项的pom文件内容 我不确定它是否正确 但它仍然抱怨它 它正在寻找 javax jws
  • Qt Creator 无法在 Mac 上启动调试

    最近 我怀疑某些系统 自制程序更新 Qt 的调试器停止工作 它永远挂在Setting up inferior 内部日志 dStart parameters QGIS mode 1 dABI x86 darwin generic mach o
  • SQL 如果没有返回行则执行此操作

    我有一个 select 语句 我想说如果这个 select 语句不返回任何行 则在每个单元格中放置一个 我该怎么做呢 select a b c from t if rowcount 0 select as a as b as c 但请确保你
  • 如何在Python中使用BeautifulSoup从标签中提取innerHTML

    我正在尝试使用以下代码从标签中提取innerHTML theurl http na op gg summoner userName Darshan thepage urlopen theurl soup BeautifulSoup thep
  • google oauth2 刷新令牌何时过期?

    google oauth2 刷新令牌何时过期 我所说的过期的意思是由于已经过了一定的时间跨度而过期 不是因为用户已撤销访问权限或因为用户已请求新的刷新令牌 我做了一些研究 但没有一个引用官方谷歌文档 我也找不到有效的谷歌文档 其他一些问题说
  • Mongo 更新子文档

    我在使用 MongoDB 时似乎遇到了障碍 并且想知道是否有解决方案 而无需修改我的数据库结构 现在我的数据库结构如下 Company id 1 properties property id 1 tags tag id 1 tag valu
  • 使用 PHP/AJAX 从 HTML 表单发送电子邮件

    我想将用户从 HTML 表单填写的信息发送到我的电子邮件地址 根据我的理解 由于电子邮件工作方式的性质 仅使用客户端编码无法完成此操作 因此建议使用 PHP 与 AJAX 结合 来处理服务器端代码 我跟着导游here https stack
  • 无法在 x86 ubuntu linux 上添加自定义系统调用

    我对此很陌生 刚刚了解内核 我正在尝试添加对内核 4 20 4 的自定义调用 这是我所做的步骤 首先我创建文件 kernel printmsg c 包含代码 include
  • 在 Windows 7 上安装 Cabal-dev

    我正在尝试在 Windows 7 上安装 Cabal dev 我已经设法通过使用以下方法解决了无法构建网络的问题 cabal install constraint network installed cabal dev 但是后来我得到了这个
  • Spring Mvc java.io.FileNotFoundException - ApplicationContext.xml

    applicationContext xml 位于 WEB INF 文件夹中 为什么我收到此错误 org springframework beans factory BeanDefinitionStoreException IOExcept
  • IE9 开发者工具中的 IE9 兼容性视图是什么?

    我正在查看 IE 9 开发人员工具 当我单击浏览器模式时 我会看到一个列表 IE 7 IE 8 IE 9 IE 9 Compatibility View 那有什么作用 IE 9 和 IE 9 兼容性视图有什么区别 The main区别在于用
  • kali linux python3-pip 面临的问题

    我面临这个问题 sudo apt get install python3 pip Reading package lists Done Building dependency tree Reading state information D
  • 逆向工程 iWork '13 格式

    Apple iWork 套件的早期版本使用非常简单的文档格式 文档是资源包 文件夹 压缩或未压缩 该捆绑包包含一个index apxl z 以专有但相当容易理解的模式描述文档结构的文件 iWork 13 完全重做了格式 文档仍然是捆绑包 但
  • 如何在 Asp.net MVC 中使用代码优先方法更新模型和数据库

    我是新来的mvc 我创建了一个MVC应用程序 我在其中使用过code first方法 现在我有两张桌子Deal and Comment 现在我想添加一个新表Category在数据库和新列中类别ID in Deal table 我如何更新数据
  • Android PICASSO - 图像未加载到 ImageView + 停止发生以下所有语句

    背景 我的 java 文件中有一个 Picasso 语句 它读取 JSON 然后将该数据格式化到屏幕上 问题 读取 JSON 后 Picasso 不会将图像从 URL 加载到 ImageView 而是停止此后发生的所有语句 例如在 Text