我得到的图像以前在最新版本的Xcode中以nil的形式返回,没有任何变化,但图像对象返回为null。我已经尝试清理和删除应用程序,甚至复制整个文件夹以查看是否存在问题,该文件夹显示在构建阶段“复制包资源”。文件夹和文件名是正确的,这个项目已经编译和启动了六次。 @ 2x文件也在文件夹中。
UIImage *iSearch = [UIImage imageNamed:@"/assets/images/controls/search_bg.png"];
UIImage *iSearchB = [UIImage imageNamed:@"/assets/images/controlsb/search_bg.png"];
NSLog(@"iSearch: %@, iSearchB: %@", iSearch, iSearchB);
日志: 2014-09-23 14:29:45.651 SmartChoice [16178:469424] iSearch :( null),iSearchB:(null)
我还有另一个问题,即失败 AppDelegate.h
return UIApplicationMain(argc, argv, nil, NSStringFromClass([IWAppDelegate class]));
而不是调用堆栈中视图控制器上的实际代码。
//更新,在这里使用信息解决了第二个问题,不确定默认情况下他们为什么关闭它:http://ijoshsmith.com/2011/11/28/debugging-exceptions-in-xcode-4-2/
答案 0 :(得分:0)
我已经解决了这个问题,显然前面提到的斜线是不起作用的。我已将其更改为[UIImage imageNamed:@“assets / images / controls / search_bg.png”];它有效。
答案 1 :(得分:0)
您不应该使用带有斜杠的假名称的imageNamed:
潜入文件夹层次结构。这是脆弱的,没有支持的,而且它曾经有效的事实只是机会。不要赌博。要么使用资产目录(现在是最好的方法),要么使用一种允许您指定子目录的NSBundle方法,例如pathForResource:ofType:inDirectory:
。