如何添加一个位置的子视图?

时间:2010-08-19 04:50:58

标签: ios objective-c uiview

我有这样的事情:

myViewController = [[MyViewController alloc] initWithNibName:@"MyView" bundle:nil];
[mainCanvas addSubview: myViewController.view];
self.view = mainCanvas;

它将被添加到位置(0,0),但我想将其添加到(0,100)或其他地方。我怎么能这样做?

4 个答案:

答案 0 :(得分:53)

这样的事情:

myViewController = [[MyViewController alloc] initWithNibName:@"MyView" bundle:nil];
myViewController.view.frame = CGRectMake(0, 100, myViewController.view.frame.size.width, myViewController.view.frame.size.height);  
[mainCanvas addSubview: myViewController.view];
self.view = mainCanvas;

答案 1 :(得分:12)

除了设置frame属性外,您还可以设置视图的center属性。

答案 2 :(得分:8)

在子视图上设置frame属性。

答案 3 :(得分:7)

这是我发现添加子视图的最佳方式,例如加载屏幕或您要显示的内容,无论您是UIViewUIScrollView还是{{1} }。

UITableView

通过将subView添加到您当前位于self.view中的位置,而不是将其放在左上角,只显示完全显示,无论您在self.view中的哪个位置,都会使子视图以全屏显示如果你处于观点的最顶端。