布局技巧
随着 H5 的普及,目前应用中会越来越多地出现
H5
页面和 OC 控件的混合排版
- 混合排版技巧
- 取消
webView.scrollView
的滚动 - 利用
KVO
监听scrollView
的contentSize
变化
- 取消
- (void)viewDidLoad {
[super viewDidLoad];
// 取消滚动功能
self.webView.scrollView.scrollEnabled = false;
// KVO 监听高度变化
[self.webView.scrollView addObserver:self forKeyPath:@"contentSize" options:0 context:nil];
NSURL *url = [NSURL URLWithString:@"http://m.baidu.com"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:request];
}
// 取消监听
- (void)dealloc {
[self.webView.scrollView removeObserver:self forKeyPath:@"contentSize"];
}
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if ([object isKindOfClass:[UIScrollView class]]) {
UIScrollView *sv = (UIScrollView *)object;
self.heightConstraint.constant = sv.contentSize.height + 34;
}
}