我试图有一个视图,以适应屏幕的剩余高度。问题是,我试图在iPhone 4和iPhone 5布局上做到这一点。
我想做的是让我的CGRectMake代码,使框架只是锚定在主视图的底部。有办法做这种事吗?谢谢!
这是我的webView CGRectMake代码:
webView.frame = CGRectMake(0, 167, 320, 313);发布于 2014-01-12 11:56:06
在这里尝试使用自动布局以避免硬编码。
webView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
webView.translatesAutoresizingMaskIntoConstraints = NO;
[self.view addSubview:webView];
NSDictionary *viewsDict = @{@"webView" : webView};
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-167-[webView]-0-|"
options:0 metrics:nil views:viewsDict]];
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-0-[webView]-0-|"
options:0 metrics:nil views:viewsDict]];在执行自动调整时,还将避免布局问题。
发布于 2014-01-12 09:20:18
您可以引用视图框架来完成这一任务。
webView.frame = CGRectMake(0, 167, 320, self.view.frame.size.height - 167);发布于 2014-01-12 09:54:21
好吧,如果你有固定的起始高度,那太容易了:
int startHeight = 167;
int frameHeight = self.view.frame.size.height - startHeight;
webView.frame = CGRectMake(0, startHeight, 320, frameHeight);这样做是得到视图的高度,然后它扣除窗口的开始偏移量。为此,需要在视图显示在UIWindow上之后执行代码,这意味着您需要在viewDidAppear而不是viewDidLoad中执行它。
https://stackoverflow.com/questions/21072965
复制相似问题