簡體   English   中英

如何在自定義UIView中檢測屏幕上的觸摸?

[英]How to detect touch on screen in custom UIView?

我想在UIView子類中查看屏幕上的用戶觸摸。 特別是還有一些其他條件:

  • 觸摸不應被我的視圖抓住(例如,如果用戶點擊某個按鈕或滾動某個應接受操作的內容)
  • 可能有多個正在觀察觸摸的視圖,它們不應彼此沖突
  • 該方法應盡可能通用(這樣我們就可以在標簽欄或導航按鈕上捕捉點擊)

我可以假設使用自定義的hitTest:方法添加特定的全屏視圖。 該視圖具有添加/刪除代表以觀察觸摸的界面。 但是這種方法在編碼方面是“困難的”,我想找到更優雅,更簡單的解決方案。

您可以在該UIView子類中編寫touchesBegan。

因為如果它具有諸如button或scrollView的任何子視圖,則它們將是第一響應者,並且對scrollView的觸摸不會觸發UIView子類的touchesBegan。

並且它不會與其他觸摸偵聽器發生沖突,除非偵聽器subView將該觸摸顯式傳遞給您的子類。

暫無
暫無

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

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