swift - Xcode:在多个目标之间共享资产
问题描述
我有一个带有两个目标的 Xcode 项目。我想在两个目标之间共享资产,以避免重复文件。
我试过的:
- 创建 SharedAssets.xcassets
- 将 SharedAssets.xcassets 添加到两个目标(创建 .xcassets 文件夹时,您可以选择将其添加到哪些目标)
- 将
.wav
文件添加到 SharedAssets.xcassets - 在代码中引用
.wav
文件
结果:
.wav
任一目标都找不到该文件。
问题:
为什么两个目标都找不到.wav
文件?如何在两个目标之间共享资产?
谢谢!
编辑:
我正在使用 SpriteKitSKAction
从内部加载文件SKScene
:
private var sound: SKAction?
override func didMove(to view: SKView) {
sound = SKAction.playSoundFileNamed("mySound.wav", waitForCompletion: false)
}
然后我正在播放这样的声音:
if let action = sound {
self.run(action)
}
如果我引用.wav
主包中的文件,此策略非常有效,但在引用 SharedAssets.xcassets 中的文件时失败。
编辑#2:
我能够成功使用存储在 SharedAssets.xcassets 中的图像——所以,这是声音的问题。
解决方案
我没有将文件放在 SharedAssets.xcassets 中,而是将其.wav
保留在包中的位置,并简单地将其添加到“Target Membership”下的第二个目标中。
对每个.wav
文件执行此操作解决了问题。
推荐阅读
- python - 减少Python中的路径名
- javascript - 使用PHP GET方法更改js代码中的值,可以吗?
- html - 在分别修改每个类的其他设置之前,通过组合类来设置字体系列来简化 CSS 是一个好主意吗?
- java - 如何在大型 JSON 文件中查找位置
- javascript - 如何在 HTML 中使用来自 onClick 的传递元素的函数?
- c# - 在其他对象上显示 2D 对象(Unity)
- vba - 访问代码导致程序锁定且无响应?
- json - 编组大型非结构化 REST/JSON 响应
- python - 流数据的最优数据结构
- javascript - Highstock,setExtreme(缩放)后获取显示点计数的真正方法 - 不计算所有具有 MIN 和 MAX 的数据