gpt4 book ai didi

xcode - NSBundle pathForResource 返回带有子目录的 nil

转载 作者:行者123 更新时间:2023-12-04 00:06:13 24 4
gpt4 key购买 nike

我的应用程序中有一堆目录和文件,例如 images/misc/mainmenu_background. .我在“iPad Simulator 3.2”中运行以下代码:

NSString *images = [[NSBundle mainBundle] pathForResource:@"images" ofType:nil];
NSString *images_misc = [[NSBundle mainBundle] pathForResource:@"images/misc" ofType:nil];
NSString *images_misc_file = [[NSBundle mainBundle] pathForResource:@"images/misc/mainmenu_background.png" ofType:nil];

此电话后, images包含路径 /Users/wic/Library/Application Support/iPhone Simulator/3.2/Applications/8F67150B-71E6-4735-8CC6-38B3CE6D3568/Foo.app/images .

但是images_miscimages_misc_filenil .仔细检查我的文件系统以检查文件是否存在:
$ ls -l "/Users/wic/Library/Application Support/iPhone Simulator/3.2/Applications/8F67150B-71E6-4735-8CC6-38B3CE6D3568/Foo.app/images/misc/mainmenu_background.png"
-rw-rw-rw- 1 wic staff 30307 16 Feb 21:09 /Users/wic/Library/Application Support/iPhone Simulator/3.2/Applications/8F67150B-71E6-4735-8CC6-38B3CE6D3568/Foo.app/images/misc/mainmenu_background.png

显然文件在那里。

如果我切换到“iPad Simulator 4.0”或任何其他模拟器版本,一切都会按预期进行。

我的设置是否有问题,或者 NSBundle 的行为是否正确?在 iPad 3.2 中?不幸的是,我没有实际的物理 iPad 来测试它。

最佳答案

如果您需要访问目录中的文件,您应该使用 -[NSBundle pathForResource:ofType:inDirectory:]相反。所以你的代码应该看起来像

NSString *images_misc_file = [[NSBundle mainBundle] pathForResource:@"mainmenu_background" ofType:@"png" inDirectory:@"images/misc"];

关于xcode - NSBundle pathForResource 返回带有子目录的 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5022544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com