[英]CachedNetworkImageProvider error listener in flutter?
[英]I'm having an issue with CachedNetworkImageProvider using Flutter
我已經為此工作了幾個小時,並且查看了一堆似乎與我相似的問題。 我發現很多“修復”都有些過時,並且對較新版本的 flutter 無效。 我目前使用的是 1.17.2,並且正在使用 cached_network_image ^2.2.0+1。
因此,如果還沒有照片,我會嘗試使用通用占位符顯示用戶個人資料照片,或者我正在從 Firebase 中提取保存照片,如果他們有的話。
這是代碼片段
_buildUserTile(User user) {
return ListTile(
leading: CircleAvatar(
radius: 20.0,
backgroundImage: user.profileImageUrl == null
? AssetImage('assets/images/user_placeholder.png')
: CachedNetworkImageProvider(user.profileImageUrl),
),
title: Text(user.name),
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (_) => ProfileScreen(
currentUserId: Provider.of<UserData>(context).currentUserId,
userId: user.id,
),
),
),
);
}
因此,當我運行程序時,它會將圓圈頭像顯示為藍色圓圈,這是我遇到的錯誤...
════════ 圖像資源服務捕獲的異常════════════════════════════ 解析圖像時拋出以下ArgumentError編解碼器:無效參數:URI 中未指定主機
拋出異常時,這是堆棧
_HttpClient._openUrl (dart:_http/http_impl.dart:2282:9)
_HttpClient.openUrl (dart:_http/http_impl.dart:2200:7)
IOClient.send
package:http/src/io_client.dart:33
HttpFileService.get
package:flutter_cache_manager/…/web/file_service.dart:32
WebHelper._download
package:flutter_cache_manager/…/web/web_helper.dart:76
Image provider: CachedNetworkImageProvider("", scale: 1.0)
Image key: CachedNetworkImageProvider("", scale: 1.0): CachedNetworkImageProvider("", scale: 1.0)
- 對不起丑陋的格式
所以它說在URI中沒有指定主機。 我不確定我做錯了什么,我不確定如何解決這個問題。 我對 flutter 很陌生。 幫助將不勝感激。 謝謝。 如果需要更多細節,請告訴我。
您似乎收到了該錯誤,因為您的鏈接是空白的。 如果要在鏈接為空白時顯示資產圖像user.profileImageUrl.isEmpty
。 下面的代碼:
_buildUserTile(User user) {
return ListTile(
leading: CircleAvatar(
radius: 20.0,
backgroundImage: user.profileImageUrl == null || user.profileImageUrl.isEmpty
? AssetImage('assets/images/user_placeholder.png')
: CachedNetworkImageProvider(user.profileImageUrl),
),
title: Text(user.name),
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (_) => ProfileScreen(
currentUserId: Provider.of<UserData>(context).currentUserId,
userId: user.id,
),
),
),
);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.