菜鸟教程小白 发表于 2022-12-12 09:58:30

ios - 运行时 bundle 中的 Xamarin iOS 交换图像


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

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

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

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

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

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

<pre><code>public static UIImage SafeClaim_Logo = UIImage.FromFile(NSBundle.MainBundle.BundlePath +&#34;/Images/Logo.png&#34;);
</code></pre>

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

<pre><code>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);
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>应用程序包是只读的,因此您无法在运行时更改或添加内容。</p>

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

<p>您可以通过调用获取文档文件夹:</p>

<pre><code>Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 运行时 bundle 中的 Xamarin iOS 交换图像,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/23790267/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/23790267/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 运行时 bundle 中的 Xamarin iOS 交换图像