如何将ViewController添加到scrollview

时间:2009-03-26 22:15:06

标签: iphone

我有一个scrollview我正在尝试从一个nib文件中添加ViewControllers。

ViewController *controller=[[ViewController alloc] initWithNibName:@"ViewController" bundle:[NSBundle mainBundle]];
[scrollview addSubview:controller];

Scrollview在别处定义。

每当我使用简单的彩色背景添加其他项目(如UIViews)时,效果都很好。当我从笔尖添加ViewController时,Viewdidload被点击,图像从笔尖加载,但控制器代码在那里停止(No viewWillAppear等)。所以我没有得到任何控制器的处理。

当作为导航或制表符控制器推送时,同一控制器工作正常。我确信我在教育过程中遗漏了一些东西,但是希望有人可以帮忙,所以我可以继续前进。

BTW:上面的ViewController是一个简单的UIViewController

2 个答案:

答案 0 :(得分:4)

我认为你的问题是addSubview期望UIView不是UIViewController - 你在编译时可能会收到警告('可能没有响应选择器'或类似的?)。如果是这样,请不要忽略这些 - 根据我的经验,通常它们是您代码中的问题: - )

您可以尝试类似

的内容
[scrollview addSubview:controller.view];

但是这仍然不能让你获得viewcontroller的处理......你需要在具有scrollview AFAIK的视图控制器中进行处理。我建议首先尝试使用在IB中工作的scrollview来获得基本视图。

答案 1 :(得分:0)

好吧,看起来有些偏差,但是我将viewWillAppear添加到viewDidLoad,这有效,但这似乎不是正确的方法,对吗?