有一个 UIViewController 的子类 AboutViewController 从一个 xib 文件初始化: self = [super initWithNibName:@"AboutViewController" bundle:[NSBundle mainBundle]];
本来功能正常,因为要支持多语言我在那个 xib 下面手贱点了 localize ,并翻译一些文字,但是写错了,想把翻译的删除,结果整个 AboutViewController.xib 就从 xcode 文件列表里面消失了!!!我打开它原来的路径发现已经被删除!无论是 xcode 的全局搜索,还是 cd 到项目的主目录运行 find ./ -name AboutViewController* 均只能找到那个 AboutViewController 的 m 文件和 h 文件!!!
更神奇的是,即使没有那个 xib ,这个 AboutViewController.m 依然能够正确从 AboutViewController 的 Nib 文件初始化!从一个根本不存在的文件里初始化!!编译不报错!!
然后我检查了回收站,里面有好几个 AboutViewController.xib ,我尝试恢复了一个到原来的位置,但是不管我怎么修改这个文件,编译出来的 app 都不会有任何改变!!似乎那个 viewcontroller 并不是从这个 xib 载入的界面,现在问题就是 self = [super initWithNibName:@"AboutViewController" bundle:[NSBundle mainBundle]]; 到底载入了哪个界面文件?如何搜索?
1
Lockerios 2016-04-15 15:20:06 +08:00
Clean 试试看?
|
2
wohenyingyu01 OP @Lockerios 对哦,搞了 3 小时竟然忘了用 clean ,当局者迷啊。。。。我已经把回收站那个 xib 改名成 AboutViewController1 了,终于起作用了
|
3
wangshuai 2016-04-16 15:00:19 +08:00
每次编译运行用 CMD + shift + r
|