iOS开发之web容器内点击自定义键盘以外的区域收自定义键盘的简单实现

博客探讨了在iOS开发中处理键盘显示与页面交互的问题。通过实现hitTest方法,当用户点击键盘区域外时,可以关闭键盘而不影响网页点击事件。这种方法避免了使用蒙版可能导致的原页面点击事件失效的问题,提供了更流畅的用户体验。
摘要由CSDN通过智能技术生成

当然这个键盘不是通过获取第一响应弹出的,是addsubview

较流行的是使用蒙版,这样整个页面都被蒙版覆盖,点击键盘以外的区域手动关闭,但会有一个问题:原页面的点击事件无法执行

比较好的办法是在键盘的view里面实现- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event方法,通过point可以判断点击的是键盘区域内还是外,在键盘区域外的话收一下键盘,并且也不影响web页面的点击事件

实现代码如下:

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
    if (point.y < 0) {
        //点击其他区域关闭键盘界面
        [self remove:nil];
    }
    UIView *view = [super hitTest:point withEvent: event];
    return view;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值