iOS开发-禁用UITextView中ApplePencil手写输入

新建子类继承UITextView,子类需遵循UIGestureRecognizerDelegate协议

@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结束时,重置可编辑状态,
//避免当pencil切换手指点击唤起键盘时,需要连续点两次
- (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
    [super touchesEnded:touches withEvent:event];
    self.editable = YES;
}

@end
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容