【问题标题】:swift ios and geing final grip on copy bundle resourcesswift ios 和最终掌握复制捆绑资源
【发布时间】:2016-04-01 14:11:14
【问题描述】:

我目前正在将另一个工具中内置的 iOS 项目转换为 xcode/swift。

我目前有一个定义了多个目标的 xcode swift ios 项目(每个客户一个)

对于每个客户,我都有一个文件夹“customerxyzassets”,我使用此处描述的过程将其添加到“目标 > 构建阶段 > 复制捆绑资源”Include a resource directory hierarchy into app bundle

此文件夹“customerxyzassets”包含包含应用程序的图像和数据文件的子文件夹。

我想在启动时获取该文件夹的路径,以便从中访问加载数据文件、图像等。

但是,我找到的代码,例如NSBundle.mainBundle,似乎需要通过上述方式对文件进行特殊访问。我宁愿拥有原始文件访问权限。我错过了什么明显的东西吗?

【问题讨论】:

  • 捆绑包可以为你找到路径

标签: ios xcode swift


【解决方案1】:

不清楚您在这里所说的“特殊访问”或“原始访问”是什么意思。 NSBundle 只返回路径或 URL,以便您可以使用普通文件 API 直接访问文件。

如果您已经创建了目录结构,那么您通常会使用pathForResource(_:ofType:inDirectory:) 来获取特定文件的路径。或者,您可以使用NSBundle.resourcePath 构建路径并使用stringByAppendingPathComponent 附加您的相对路径。 pathForResource 方法的优点是它们可以为您处理本地化,这是首选,除非资源永远不应本地化(这种情况很少见)。

【讨论】:

    猜你喜欢
    • 2016-03-15
    • 2013-01-19
    • 2019-02-08
    • 2014-09-27
    • 2020-01-07
    • 1970-01-01
    • 2014-06-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多