最近定義自定義空白頁的時(shí)候瓤的,發(fā)現(xiàn)自定義空白頁,點(diǎn)擊事件無法響應(yīng)建椰。
看了源碼發(fā)現(xiàn)問題點(diǎn):
-
contentView 沒有鋪全
image.png -
對(duì)事件響應(yīng)者鏈做了截?cái)嗵幚?/p>
改兩個(gè)地方:
1. 添加contentView 約束
UIScrollView+EmptyDataSet.m
添加v方向約束唆途,使contentView鋪滿料饥。
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[contentView]|" options:0 metrics:nil views:@{@"contentView": self.contentView}]];
2. EmptyView視圖姻几,子視圖view部分截?cái)嗍蛊洳豁憫?yīng)事件匣缘。事件傳遞到父視圖
PPBlankEmptyView.m
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
UIView *hitView = [super hitTest:point withEvent:event];
// Return any UIControl instance such as buttons, segmented controls, switches, etc.
if ([hitView isKindOfClass:[UIControl class]]) {
return hitView;
}
return nil;
}