【问题标题】:How do you build an NSURL for an image in Image.xcassets?如何为 Image.xcassets 中的图像构建 NSURL?
【发布时间】:2015-04-24 19:38:50
【问题描述】:

加载本地UIImage 资产的最简单方法当然是使用+[UIImage imageNamed],但就我而言,我想提供NSURL *。如何获取本地文件的 NSURL *

【问题讨论】:

  • 如果它在你的图片资源中,你应该不需要使用 NSURL...
  • 简单来说没有办法。
  • "我需要提供一个 NSURL *" 不,你不需要。
  • -_- 如果这是关于任何其他本地文件的问题,它将是一个有效的问题,并且没有被否决。我正在尝试构建一个抽象,在从服务器获取图像之前,该图像不一定可以传递。想要标准化接口以使用 NSURL 而不是 UIImage 是完全合理的。
  • @matt 很好——那么“想要”,不需要。

标签: ios uiimageview uiimage uikit


【解决方案1】:

在使用 xcasset 时,Xcode 会将所有文件放入一个新文件中。 1个文件来管理它们。因此,您无法直接访问 xcasset 内的图像存储。来自苹果的documentation

对于部署目标至少为 iOS 7 或 OS X 10.9 的项目, Xcode 将您的资产目录编译为运行时二进制文件格式 这会减少您应用的下载时间。

如果您必须访问该文件,您有两种选择:

  • 不要对这个图像使用 xcasset,而是把你的图像作为普通图像放在你的项目中,并使用NSBundle 来获取它
  • 使用UIImage imageNamed,并将其保存在您选择的目录中

但无论您需要什么,您都应该考虑另一种管理方式。以上解决方案都可以,但我相信您可以有更好的解决方案。

【讨论】:

    猜你喜欢
    • 2015-03-27
    • 2022-01-12
    • 2015-01-28
    • 2016-08-13
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    • 2019-06-17
    相关资源
    最近更新 更多