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

DNB*_*ims 27 objective-c uiview ios

我有这样的事情:

myViewController = [[MyViewController alloc] initWithNibName:@"MyView" bundle:nil];
[mainCanvas addSubview: myViewController.view];
self.view = mainCanvas;
Run Code Online (Sandbox Code Playgroud)

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

acq*_*sce 54

像这样的东西:

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;
Run Code Online (Sandbox Code Playgroud)


Dav*_*ong 12

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


Gar*_*ary 8

在子视图上设置frame属性.


why*_*yoz 7

这是我发现添加一个子视图,像要告诉你是否在加载屏幕或东西的最佳方式UIView,UIScrollViewUITableView.

myViewController = [[MyViewController alloc] initWithNibName:@"MyView" bundle:nil]; 
myViewController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
[self.view addSubview:myViewController.view];
self.view.bounds = myViewController.view.bounds;
Run Code Online (Sandbox Code Playgroud)

通过将subView添加到self.view中当前所在的位置,而不是将其放在左上角,只有在您完成时才会完全显示,这将使子视图无论您在self.view中的哪个位置都以全屏显示在您的视图的最顶部.