Masonry + ScrollView 佈局小問題
阿新 • • 發佈:2019-01-09
Masonry 去做scrollView的自適應,需要在scrollView上新增一箇中間層(UIView )來確定scrollView的contentSize,但是,有可能這個中間層的view是看不見的,就會導致新增上的Button點選沒響應的時候不知道Button是不是新增到中間View上,關於中間(View)層不顯示的原因,請看這裡。
原因簡述:UIScrollView的leading/trailing/top/bottom是相對於自己的ContentSize而不是Bounds來確定的。而ContentSize又是根據子檢視決定的。
解決方法如下:
UIScrollView *src = [[
src.showsVerticalScrollIndicator =NO;
[self.viewaddSubview:src];
[src mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.view);
}];
UIView *contentView = [[UIViewalloc] init];
[src addSubview:contentView];
[contentView
make.edges.equalTo(src);
make.width.height.equalTo(src);
}];
make.width.height.equalTo(src);這句尤其重要