未调用preferredScreenEdgesDeferringSystemGestures和childViewControllerForScreenEdgesDeferringSystemGestures
2018-09-04 18:52 法子 阅读(1274) 评论(5) 编辑 收藏 举报有一种原因会导致不调用重写的preferredScreenEdgesDeferringSystemGestures和childViewControllerForScreenEdgesDeferringSystemGestures函数。
就是新建了一个UIWindow,(默认isHidden = true),并设isHidden = false。
这时就会影响tabbarcontroller里重写的childViewControllerForScreenEdgesDeferringSystemGestures不被系统调用,它的viewcontrollers里的viewcontroller里面重写的preferredScreenEdgesDeferringSystemGestures也不被系统调用。
其结果就是,比如虽然重写了下面的函数,希望底部不优先响应系统边缘的屏幕手势
override func preferredScreenEdgesDeferringSystemGestures() -> UIRectEdge {
return .bottom
}
但是由于没被调用,底部的button按钮响应长按还是会延迟