这个问题与基于运行时选项动态初始化不同的视图控制器有关。基本上,当应用程序启动时,Web 服务会向下发送一段 XML/JSON 来定义用户偏好等。
我们需要根据这些变量确定接下来向用户显示哪个视图控制器。所以我们有一个类会询问某些问题(打开/关闭哪些功能等),然后我们需要能够返回一个类或基于此初始化一个类。由于我不想在每个视图控制器中导入每个视图控制器标头,我如何使用以下方法初始化一个类:
[[self nextClassManager] getNextClass];
谢谢
这个问题与基于运行时选项动态初始化不同的视图控制器有关。基本上,当应用程序启动时,Web 服务会向下发送一段 XML/JSON 来定义用户偏好等。
我们需要根据这些变量确定接下来向用户显示哪个视图控制器。所以我们有一个类会询问某些问题(打开/关闭哪些功能等),然后我们需要能够返回一个类或基于此初始化一个类。由于我不想在每个视图控制器中导入每个视图控制器标头,我如何使用以下方法初始化一个类:
[[self nextClassManager] getNextClass];
谢谢
根据控制器类名,我使用类似的东西从服务器命令打开视图控制器:
- (void)openViewController:(NSString *)theControllerClassName {
Class theControllerClass = NSClassFromString(theControllerClassName);
if (theControllerClass && [theControllerClass isSubclassOfClass:[UIViewController class]]) {
UIViewController* controller = [[theControllerClass performSelector:@selector(alloc)] init];
UINavigationController *nav = (UINavigationController *)self.tabBarController.selectedViewController;
[nav pushViewController:controller animated:YES];
[controller release];
}
}