适用于iOS 4.3的addChildViewController替代方案

时间:2012-02-13 13:14:16

标签: iphone version addchild

我想使用addChildViewController的相同功能,但对于版本4.3(addChildViewController仅在版本5中可用)。 提前谢谢。

3 个答案:

答案 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)会严重质疑您对视图控制器控制的需求。