OGeek|极客世界-中国程序员成长平台

标题: ios - 运行时 bundle 中的 Xamarin iOS 交换图像 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 09:58
标题: ios - 运行时 bundle 中的 Xamarin iOS 交换图像

我想让我的应用从网络上下载图像以放置在/images 中,然后显示在 UI 中 - 这是为了允许为 Multi-Tenancy 应用下载品牌特定图像。

应用程序会很好地下载图像并将图像放入/Images 文件夹中

但是,当尝试使用 UIImage.FromFile 加载图像时,它总是返回 null - 即使我完全知道图像在那里!

我知道 UIImage.FromBundle 会缓存东西,所以我选择使用 FromFile 但这似乎不起作用?!

我需要做些什么来完成这项工作吗?还是我有点碰运气?

我正在使用以下内容来创建文件路径:

public static UIImage SafeClaim_Logo = UIImage.FromFile(NSBundle.MainBundle.BundlePath +"/Images/Logo.png");

以下是我用来下载和保存文件的代码 - 当我检查时,上面的文件路径与下面相同

HttpClient client = new HttpClient ();
var clientResponse = await client.GetByteArrayAsync(url);

using (FileStream fs = new FileStream(NSBundle.MainBundle.BundlePath + path, FileMode.OpenOrCreate))
 {
     var bytes = clientResponse;
     fs.Write(bytes, 0, bytes.Length);
 }



Best Answer-推荐答案


应用程序包是只读的,因此您无法在运行时更改或添加内容。

在运行时创建的所有内容都应存储在您的文档或缓存文件夹中。

您可以通过调用获取文档文件夹:

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)

关于ios - 运行时 bundle 中的 Xamarin iOS 交换图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23790267/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4