如何将子视图添加到另一个子视图并使其显示?

时间:2012-05-10 03:27:19

标签: ios uiview scrollview addsubview

我正在创建UIImageView并希望将其添加到UIScrollingView作为其滚动内容,但它永远不会出现。所以我尝试了以下代码,问题现在对我来说非常清楚。如何将子视图添加到另一个子视图?

 //in myViewController.m
 @synthesize scrollView = _scrollView;
 - (void) viewDidLoad{ 
     UIView* simpleView = [[UIView alloc] initWithFrame:CGRectMake(0,0,300,200)];
     [simpleView setBackgroundColor: [UIColor BlueColor]];
     [self.view addSubview: simpleView]  //this would work, the simple view appears
     [self.scrollView addSubview: simpleView]  //this would not work, the simple view doesn't appear
 }

scrollView属性与故事板中的ScollView连接,这是该控制器中唯一的东西

3 个答案:

答案 0 :(得分:2)

你需要这样做:

[self.view addSubview: scrollview]  
[self.scrollView addSubview: simpleView] 

基本上在另一个上面添加一个并不是所有东西都堆叠在视图上。图像在自我顶部的视图之上

答案 1 :(得分:0)

一种可能性:滚动视图可能未链接到xib / storyboard中的scrollView属性。在此方法中设置断点并进行检查。

答案 2 :(得分:0)

视图只能包含一个 superView。

所以当你这样做时:

[self.view addSubview: simpleView];
[self.scrollView addSubview: simpleView];

您只需将simpleView superView设置为self.view,然后将其替换为self.scrollView。 simpleView不再是self.view的子视图。

正如ECEsurfer所说,堆叠您的观点:

[self.view addSubview: scrollview];
[self.scrollView addSubview: simpleView];

希望它有所帮助!