这是一个问题,但之前已经提出过问题,但解决方案看起来像过去一样有效,或者还有其他问题发生。
我有一个MapView,在它之上我放置了一个不透明的UIView,作为用户的指示器。这已在界面构建器中完成,因此无需手动放置控件或类似的东西。我希望UIView不阻止用户与MapView的交互,例如双击缩放,平移等。我已经尝试了现有的解决方案,即在UIView的界面构建器中取消选中“User Interaction Enabled”框,但是没有用。
我该如何解决这个问题?
如果事实证明iOS8 / XCode 6不影响此解决方案,我将发布代码。
代码:https://github.com/ChrisChares/swift-alarm Github Repo,请注意,这不是我的代码,但它反映了此处显示的问题。转到MapViewController界面。
答案 0 :(得分:0)
如何覆盖这个UIView的最热门方法,然后返回nil?我目前无法使用ios8 sim测试,所以这只是猜测。
答案 1 :(得分:0)
解决方案:我明白了,这可能是Xcode 6中的一个潜在故障,或者Apple故意改变了选项面板中的某些逻辑。
切换启用用户交互的框不能解决问题,如前所述。
但是,使用代码执行此操作时,只需使用:
targetView.userInteractionEnabled = false 你会注意到MapView正确地记录了UIView的触摸。