我在UIScrollView
內有UIView
。我可以輕鬆將高度固定到UIScrollView
的框架高度。使用UIScrollview的Autolayout約束contentSize
如何添加一個約束,即引腳到UIScrollView的contentSize
而不是?
謝謝!
我在UIScrollView
內有UIView
。我可以輕鬆將高度固定到UIScrollView
的框架高度。使用UIScrollview的Autolayout約束contentSize
如何添加一個約束,即引腳到UIScrollView的contentSize
而不是?
謝謝!
答案「以編程方式添加約束」是正確的,但對於細節我略微接受它作爲完整答案。
下面是我做到的!
--Code--
- (void)webViewDidFinishLoad:(UIWebView *)webView {
_scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width, _headerImageView.frame.size.height + webView.scrollView.contentSize.height);
_webView.translatesAutoresizingMaskIntoConstraints = NO;
NSDictionary *viewsDictionary = @{@"myWebView":_webView};
NSString *constraintsString = [NSString stringWithFormat:@"V:[myWebView(%i)]", (int)_scrollView.contentSize.height];
NSArray *constraint_H = [NSLayoutConstraint constraintsWithVisualFormat:constraintsString options:0 metrics:nil views:viewsDictionary];
[_webView addConstraints:constraint_H];
}
UIScrollView具有動態約束,在運行時會生成左邊,上邊,寬度和高度。如果將UIView放在UIScrollview中並且在Interface Builder中固定了固定約束,它將生成一個錯誤,因爲這些參數與Superview/Container View相關。
你可以嘗試一些變通方法:
1-添加的UIView約束編程
http://www.thinkandbuild.it/learn-to-love-auto-layout-programmatically/
2-手動調整一個UIView子類
裏面initWithFrame功能視圖邊界請給我任何關於你的進展的反饋。
有何進展? @sayguh – carantes 2014-11-04 01:16:03