我試圖加載一個UIView
,然後馬上檢測觸及新視圖。目前,覆蓋touchesBegan
延遲了大約一秒鐘。touchesBegin延遲後呈現UIView
因此,我加載了UIView
並立即繼續點擊屏幕。調用touchesBegan
需要大約一秒鐘的時間。從那時起,一切都很好。但是,我無法承受〜第二次等待。
我已經將UIView
中的所有代碼都剝離出來,以防止任何東西堵塞主線程,但延遲仍然存在。
如何才能立即獲得新提交的觸摸反饋UIView
?謝謝。
- 編輯下面 -
我一直在玩弄這在過去的幾個小時。即使在創建自定義UIWindow
並重寫sendEvent
時,當顯示新視圖時,UITouchPhase
也會暫停。要再次開始接收事件,我必須將手指從屏幕上取下並放回屏幕上。 (我不想這樣做)。
這個問題似乎在於對新視圖控制器的延續。當它繼續時,觸摸階段結束。如果我只是將子視圖添加到當前視圖控制器,我會看到所需的功能(即即時響應觸摸)。
鑑於我新近出現的視圖包含很多邏輯,我想將它全部包裝在它自己的視圖控制器中,而不是將它添加到演示者視圖控制器中。有沒有辦法讓我做到這一點,並使用'addSubview`來呈現它?這應該有希望達到預期的效果。
我在這裏遇到了同樣的麻煩。 http://stackoverflow.com/questions/33727638/ios-why-touchesbegan-has-some-delay-in-some-specific-area-in-uiview你是如何解決你的麻煩? – TomSawyer 2015-11-16 07:35:14