首页 > 移动平台 > 详细

Note1:iOS开发笔记

时间:2018-06-29 15:30:31      阅读:251      评论:0      收藏:0      [点我收藏+]

1.重写hitTest方法,干预iOS事件传递过程

如下所示,view上有一个button,button一半的frame在父类view bounds之外, 按照iOS系统默认的处理逻辑, 如果点击按钮上半部分,则按钮不会响应时间,如果点击下半部分才行, 要想让点击上半部分一样相应事件,则需要干预事件的传递过程,如下代码所示. 判断事件发生的point在button上面,则让button去响应事件即可.

override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
        let btnPoint = self.convert(point, to: navigationButton)
        if navigationButton.point(inside: btnPoint, with: event) {
            return navigationButton
        }else{
            return super.hitTest(point, with: event)
        }
    }

2.清空WKWebView的历史纪录

项目需求需要清空webView的历史纪录,要不然只能使用两个webView, 按理说应该是一个就能解决的, 用两个心里有点不爽. 百度两个多小时找不到可用的方法, 最终在stackoverflow上面找到一种解决方案, 使用webWKWebView的私有方法, 代码如下所示:

answer in stackoverflow

webView.backForwardList.perform(Selector(("_removeAllItems")))

Note1:iOS开发笔记

原文:https://www.cnblogs.com/dev-walden/p/9243626.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!