目标c - 运行时的Viewcontrollers和Views创建在某些情况下不起作用

时间:2011-10-13 12:54:21

标签: iphone objective-c uiviewcontroller

我有一个相对庞大的应用程序,大约有40个视图和大约300个类。该应用程序使用SQLite数据库。我开发这个应用程序大约半年,直到现在一切都好。 在运行时创建视图和控制器的过程由ViewController Factory完成。在每次开始时,我都会创建一个包含所有viewcontrollers信息的字典(将class和xib名称存储为字符串)。然后,当我想显示一个视图时,我使用NSClassFromString方法获取控制器的类,并使用以下方法创建控制器:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

最奇怪的是,在某些viewcontrollers(大约40个中的大约5个)的情况下,这个方法返回nil(这样的viewcontroller也是,我不从数据库中获取数据,所以我不认为这将是问题)。直到现在一切正常,每个视图控制器都已创建。我注意到,我可以通过删除每个IBOutlet引用并从代码中绘制视图来解决此问题。然后该方法再次起作用。我不明白...... 我尝试创建一个新视图并再次添加所有IBOutlet引用,但它不起作用。有人早点遇到过这个问题吗谢谢,madik

1 个答案:

答案 0 :(得分:0)

可能是当前没有加载该名称的类吗?

NSClassFromString returns nil

另请参阅有关单身人士阻止加载课程的评论?