2013-07-25 36 views
1

我想在用戶觸摸後在我的應用中執行幾件事 - 觸摸的時間越長越好 - 是否有限制?太長時間後,iOS會「強制」觸發Ending?iOS對touchesbegan的持續時間有限制嗎?

+1

他們需要碰觸多久?因爲如果你正在尋找一個長時間的觸摸,你可以嘗試使用UILongPressGestureRecognizer並將你的目標設置爲self,並嘗試@selector(touchesBegan:withEvent :); – user2277872

+0

我想你的問題是,touchstart有沒有超時,或者「如果用戶長時間按住他們的手指,ios會強制touchEnd。 – nycynik

回答

1

可能沒有限制。它可能更多地是用戶體驗的限制(在什麼時候長時間按壓會變得令人討厭)。

0

touchesEnded將在touch(es)結束時被調用。你可以(理論上)在touchesBegan處理程序中花費盡可能多的時間。但是這可能(也可能會)導致糟糕的UI響應。

如果您確實需要花費很多時間,您可能需要考慮在touchesBegan中啓動後臺線程。

如果內存服務於我的權利touchesMoved只會在touchesBegan方法達到最終結果時纔會調用 - 觸摸將被緩衝。

編輯:至於你更新的問題:不,除了電池和用戶的耐心外,沒有任何限制。取決於你想達到的目標,可能比留在touchesBegan更優雅的解決方案。