簡體   English   中英

在iPhone上處理多次觸摸

[英]Handling multiple touches on iPhone

我目前正在開發一個應用程序,其中我具有很多子視圖的主視圖。 現在,我有兩個特定的子視圖,並且我只希望其中一個可以同時被“觸摸”。 因此,兩者都應該能夠響應觸摸事件,但不能同時響應。 由於我還有其他可以同時觸摸的子視圖,因此無法使用multitouch或ExclusiveTouch屬性。 有什么想法嗎? 也許我可以將兩種視圖都分組到一個觸摸區域。

提前致謝

在您的應用程序委托或其他單個viewBeingTouched一個讀寫屬性,我們將其viewBeingTouched 請確保您使用@property 沒有 nonatomic

使您的兩個視圖實例都可以覆蓋UIResponder方法:

  1. 在touchesBegan中,檢查viewBeingTouched的值。 如果為nil ,請將其設置為self並調用super的實現。 否則,什么都不做。

  2. 在touchesEnded,檢查的價值viewBeingTouched 如果是self ,請將其設置為nil。

得到它? 進行觸摸的第一個視圖將抓住該屬性,並阻止另一個視圖對其進行注冊。

將邏輯置於其父級中,以(暫時)禁用那些沒有得到觸摸的邏輯(userInteractionEnabled = NO)。

當然,仍然有人可以同時放下每個手指。 您可以確定哪個視圖最接近觸摸中心。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM