自定义的视图获取不到点击方法,是因为自定义视图的父类的高度依据子类的约束判断的,直接返回带frame的视图父类获取不到高度 解决办法
1.// 自定义显示视图
// 自定义显示视图
- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView{
CRHelpSearchEmptyView *emptyView = [[CRHelpSearchEmptyView alloc]initWithFrame:self.collectionView.bounds];
[emptyView reloadUI];
@weakify(self);
emptyView.opinionBtn.btnBlock = ^(CRImgTitBtn * _Nonnull btn) {
@strongify(self);
//点击了意见反馈
[self opinionClick];
};
//防止父类没有高度
NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:emptyView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1 constant:emptyView.cr_height];
[emptyView addConstraint:heightConstraint];
return emptyView;
}
2 使用msonry
// 自定义显示视图
- (UIView *)customViewForEmptyDataSet:(UIScrollView *)scrollView{
CRHelpSearchEmptyView *emptyView = [[CRHelpSearchEmptyView alloc]initWithFrame:self.collectionView.bounds];
[emptyView reloadUI];
@weakify(self);
emptyView.opinionBtn.btnBlock = ^(CRImgTitBtn * _Nonnull btn) {
@strongify(self);
//点击了意见反馈
[self opinionClick];
};
//防止父类没有高度
[emptyView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(self.collectionView.cr_height);
}];
return emptyView;
}