我注意到一些XCode项目包含一个名为resources(例如)project1.bundle
的资源文件夹下的目录,该目录包含图像和.nib
文件(不像.xib
文件那样可读)。 .bundle
目录不接受来自其外部的任何文件的任何拖放:
我的问题是:
1)为什么他们使用这样的目录?为什么不只是将他们的图像和其他东西直接放在资源文件夹中并以通常的方式使用它们? 2)为什么他们在这个目录中使用.nib
个文件?为什么不使用相应的.xib
文件?
3)如何在Xcode中创建.bundle
目录?
P.S。 - .nib
目录中的每个xx.bundle
文件在项目的其他位置都有相应的.xib
文件,因此如果view1.nib
目录中有一个名为project1.bundle
的文件,项目中有一个名为view.xib
答案 0 :(得分:1)
.bundle文件夹是您链接应用程序的外部库的目录。它们包含您可以在某种程度上在自己的应用程序中使用的代码。回答你的所有问题:
1).bundle项目由其他人创建。因此,有时您不允许将所有代码合并到您自己的项目中。您必须将其添加为代码库。
2)Nib文件采用二进制格式以保护其内容。因此,您无法在Xcode中打开它们来查看文件的内容(可能受版权保护)。开发人员在分发代码之前编译代码是正常的,这可以防止copycats窃取他们的工作。
3)要在应用程序中添加另一个.bundle,可以在Xcode中将项目的.xcodeproj拖放到项目根目录中。然后,您可以在“构建阶段”选项卡下将项目添加为项目的依赖项。然后在编译项目时编译项目。最后,将您的应用程序与其他项目的已编译库链接,将其添加到“Link Binary with Libraries”列表中。
要让其他人将您的项目添加为依赖项,只需向他们发送项目的完整文件夹即可。他们可以使用上述方法将您的项目添加到他们的项目中。
希望这有帮助。