新建子類繼承UITextView,子類需遵循UIGestureRecognizerDelegate協(xié)議
@interface SubTextView : UITextView<UIGestureRecognizerDelegate>
@end
@implementation SubTextView
//通過touch事件搅方,判斷是否是UITouchTypePencil
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
if (touch.type == UITouchTypePencil) {
self.editable = NO;
return NO;
}
self.editable = YES;
return YES;
}
//本次touch結(jié)束時悦屏,重置可編輯狀態(tài),
//避免當pencil切換手指點擊喚起鍵盤時卖怜,需要連續(xù)點兩次
- (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
[super touchesEnded:touches withEvent:event];
self.editable = YES;
}
@end