对于我的自定义UIView,我已经覆盖了touchesBegan
方法。我告诉它要做的是改变它的'层的背景颜色:
dispatch_async(dispatch_get_main_queue()){
self.layer.backgroundColor = clr_someCGColor
}
这很奇怪。如果我在Landscape中快速点击视图,它可以很好地完成所有操作,但是如果我在Portrait中执行此操作,我必须保持一段时间才能看到结果,但是如果touchesEnded
方法立即被调用,则我快速点击。可能是什么原因导致肖像延迟?
答案 0 :(得分:1)
删除dispatch_async
包装器。所有这一切都会导致延迟(我们无法在主线程上执行,直到您正确地说,分接头结束并且touchesEnded
已经过去了)。你在<{1}}主线程上已经,所以不需要这个额外的延迟。
更好的是,使用轻拍手势识别器。