注册UITapGestureRecognizer
let webTap:UITapGestureRecognizer = UITapGestureRecognizer(target:self, action: Selector("webTap:"))
webTap.delegate = self
webTap.cancelsTouchesInView = false
self.view.addGestureRecognizer(webTap)
实现代理,捕获焦点位置
// 设置过滤,ruturn YES为同时接收,至此手势可以透过webView,让你的superView也可以接收到了
func gestureRecognizer(UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer:UIGestureRecognizer) -> Bool {
return true
}
func webTap(sender: UITapGestureRecognizer) {
let tapPoint: CGPoint = sender.locationInView(self.webView.scrollView)
touchRect = CGRectMake(tapPoint.x, tapPoint.y, 1, 1)
}
构造UIPopoverController,在捕获的焦点出弹出视图
let vc = UIViewController()
//init popoverController
popover = UIPopoverController(contentViewController: vc)
......
vc.view.addSubview(actionSheet)
vc.view.frame = actionSheet.frame
popover?.popoverContentSize = actionSheet.frame.size
//present popoverController
popover?.presentPopoverFromRect(touchRect, inView: self.webView, permittedArrowDirections: .Any, animated: false)