我想使用addChildViewController的相同功能,但对于版本4.3(addChildViewController仅在版本5中可用)。 提前谢谢。
答案 0 :(得分:2)
虽然不推荐,但您可以创建一个UIViewController
访问它的view
属性的实例,并将其设置为主view
的主要UIViewController
的子视图。管理。它有效,我从来没有遇到过这个问题。
也就是说,推荐的方法是让一个NSObject
子类充当你的子控制器,而不是使用UIViewController
,因为它有特殊的行为。
答案 1 :(得分:0)
iOS: different addSubview behavior between iOS 4.3 and 5.0中解释了类似的内容。
我通过添加这些行来解决它:
NSMutableArray *controladores=[[NSMutableArray alloc]init];
[controladores addObject:myController];
if ([[[UIDevice currentDevice] systemVersion] compare:@"5.0"] == NSOrderedAscending) {
[tabBar setViewControllers:controladores animated:YES];
}
答案 2 :(得分:0)
我认为你想要这样做的原因是为了ipad应用程序,因为Apple声称单个视图控制器应该“一般”(并且在ipad存在之前他们说“总是”)控制整个屏幕充满视图。
当Apple制作自己的容器视图控制器(splitViewController)时,这真的只会改变ipad的额外屏幕空间,最终导致Apple允许我们在ios5中创建自己的容器视图控制器。
如果您的应用是iphone应用,那么我(和Apple)会严重质疑您对视图控制器控制的需求。