我想让我的应用从网络上下载图像以放置在/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-推荐答案 strong>
应用程序包是只读的,因此您无法在运行时更改或添加内容。
在运行时创建的所有内容都应存储在您的文档或缓存文件夹中。
您可以通过调用获取文档文件夹:
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
关于ios - 运行时 bundle 中的 Xamarin iOS 交换图像,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/23790267/
|