'NSBundle mainBundle' pathForResource 奇怪的行为
'NSBundle mainBundle' pathForResource strange behavior
我想不出任何关于 pathForResource
工作原理的韵律或原因……或者更恰当地说,不是。
我的应用程序中有一堆 nib,它们都在 /Build Phases/Copy Bundle Resources 中。
它们也在 File Inspector
选项卡的 Target Membership
中正确勾选。
为了简洁起见,我在这里只展示了 2 个案例。
当我到达我使用 pathForResource
的代码部分时,我得到了任意且不一致的结果。尽管我所有的笔尖都被命名为 ____.xib,但在某些情况下,我从 pathForResource
获得结果的唯一方法是如果我要求 xml
而其他时候我必须要求nib
有人知道为什么这种行为不一致吗?
这些结果对我来说并不特别令人惊讶或不一致。
.xib 文件是 NIB 的源文件。它们不应直接复制到应用程序中。它们在构建时被编译为 .nib 文件,正是这些 .nib 文件被复制到应用程序中。您不应该期望 pathForResource:... ofType:@"xib"
在您的应用程序中找到 .xib 文件。如果是这样,您就以某种方式搞砸了应用程序的构建。 .xib 文件在 运行 时间没有用。
大概与此无关,您有一个文件 TabSale.xml 处于 Copy Bundle Resources 构建阶段。那个文件是直接复制过来的。如果您不打算复制原始 XML 文件——例如,如果这是一个应该在构建时转换为其他文件的源文件——那么您需要弄清楚为什么要复制它。如果出于某种原因它只是 TabSale.xib 的伪造副本,您应该将其删除。
我想不出任何关于 pathForResource
工作原理的韵律或原因……或者更恰当地说,不是。
我的应用程序中有一堆 nib,它们都在 /Build Phases/Copy Bundle Resources 中。
它们也在 File Inspector
选项卡的 Target Membership
中正确勾选。
为了简洁起见,我在这里只展示了 2 个案例。
当我到达我使用 pathForResource
的代码部分时,我得到了任意且不一致的结果。尽管我所有的笔尖都被命名为 ____.xib,但在某些情况下,我从 pathForResource
获得结果的唯一方法是如果我要求 xml
而其他时候我必须要求nib
有人知道为什么这种行为不一致吗?
这些结果对我来说并不特别令人惊讶或不一致。
.xib 文件是 NIB 的源文件。它们不应直接复制到应用程序中。它们在构建时被编译为 .nib 文件,正是这些 .nib 文件被复制到应用程序中。您不应该期望 pathForResource:... ofType:@"xib"
在您的应用程序中找到 .xib 文件。如果是这样,您就以某种方式搞砸了应用程序的构建。 .xib 文件在 运行 时间没有用。
大概与此无关,您有一个文件 TabSale.xml 处于 Copy Bundle Resources 构建阶段。那个文件是直接复制过来的。如果您不打算复制原始 XML 文件——例如,如果这是一个应该在构建时转换为其他文件的源文件——那么您需要弄清楚为什么要复制它。如果出于某种原因它只是 TabSale.xib 的伪造副本,您应该将其删除。