我有一个问题,我认为可能是直截了当的,但我似乎不能把我的头围绕它。
我有一个从nsdictionary数组加载的tableview。每个字典都有一个标题(显示在行中)和一个关联的nssstring,表示一个viewcontroller,当选择行时,该viewcontroller应该被推送到堆栈上。换言之,选择行“A”需要初始化“aViewController”实例并将其推送到堆栈上,选择行“B”需要初始化“bViewController”实例并将其推送到堆栈上等。
我最初只是将所有可能的值硬编码到didSelectRow中。但我真的希望能够动态地生成viewController。我发现了几个类似的问题的C++例子,这些代码引导我进入下面的代码。但我似乎不能把它弄对,也不确定我是否在一个目标c解决方案的正确轨道上。有人有什么想法吗?
Class cls = [selectedRow valueForKey:@"viewController"];
if (cls!= nil)
{
id myNewController = [[cls alloc] init];
}
[[self navigationController] pushViewController:myNewController animated:YES];
[myController release];