在运行时替换包中的图像

发布于 2024-10-13 12:21:02 字数 94 浏览 6 评论 0原文

我可以在运行时替换包中的图像吗?基本上,我的捆绑包中有一些图像,如果图像有任何更改,我也会从服务器获取它们。我可以在运行时将它们放入包中,这样我就不需要更改代码来选择图像吗?

Can I replace images in bundle at run time? Basically, I have some images part of my bundle and also I will have them from the server if there is any change in the image. Can I place them in the bundle at run time so that I need not to change my code to pick the image?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

乖乖公主 2024-10-20 12:21:02

您无法更改应用程序包的内容。

但是,可以将图像存储在应用程序的文档文件夹中。然后,您将能够覆盖这些图像,以防需要更改它们。

有两种方法可以实现此目的:

  1. 在启动时,检查文档目录中是否存在图像文件。如果没有,请将捆绑图像复制到文档文件夹中。
  2. 每次加载图像时,检查它是否存在于文档目录中。如果存在,则加载它,否则加载捆绑包中的一个。这可以避免复制数据,从而减少磁盘使用量,但实施起来需要更多工作。

You cannot change the contents of an Application bundle.

It is however possible to store the images in the Application's documents folder. Then you'll be able to overwrite those images in case they need to be changed.

There are two ways to achieve this:

  1. At launch, check whether the image files exist in the documents directory. If not, copy the bundle images to the document folder.
  2. Every time you load an image, check if it exists in the documents directory. If it does, load it, otherwise load the one from the bundle. This avoids copying the data thus leading to less disk usage, however it's more work to implement.

您无法在运行时更改捆绑包。这将阻止应用程序运行,因为配置文件将不再有效。你会在 stackoverflow 上找到大量如何处理 iOS 提供的沙箱文件夹的代码。

编辑
有用的问题/解答

You cannot change the bundle on runtime. This will prevent the app from running, as the profile won't be valid anymore. You will find tons of code how to deal with the sandbox folders provided by iOS on stackoverflow.

edit
Useful questions / answers

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文