我有一個視圖控制器和一個UIImageView作爲子視圖。該UIImageView也有相同類型的子視圖。觸摸事件沒有觸及方法?
我:
self.userInteractionEnabled = YES;
爲每套。我的touchesEnded代碼正在工作。任何想法會導致這種情況?沒有觸及甚至觸及事件。我不明白?
任何幫助表示讚賞。
感謝// :)
我有一個視圖控制器和一個UIImageView作爲子視圖。該UIImageView也有相同類型的子視圖。觸摸事件沒有觸及方法?
我:
self.userInteractionEnabled = YES;
爲每套。我的touchesEnded代碼正在工作。任何想法會導致這種情況?沒有觸及甚至觸及事件。我不明白?
任何幫助表示讚賞。
感謝// :)
我剛剛從saimhann2002那裏得到了一個類似問題的解決方案。
感謝您的回覆。我現在已經能夠解決這個問題。問題是我將子視圖添加到MKMapView而不是ViewController的視圖。我不知道爲什麼這是一個問題。如果你這樣做,我會有興趣聽到。將視圖作爲子視圖添加到ViewController的視圖中可以修復所有內容,即使其顏色爲UIColor clearColor,該視圖也可以接受觸摸。
工作!
聽起來像是你已經走了一路上漲的鏈條,並檢查了self.userInteractionEnabled一路攀升到頂部,對不對?好的,現在檢查是否有任何視圖的exclusiveTouch設置爲YES。另外,如果您在父視圖上調用resignFirstResponder而不是UIText字段,則會放棄事件。
最後,beginIgnoringInteractionEvents也會導致這個。
好的,一直在調查。我的層次結構是VC與UIImageView子視圖。然後是UISubView的另一個子視圖,它也是UIImageView的子類。我在VC的觀點中得到了子視圖中的事件。但在子視圖中,不。如果它是第一個子視圖的子視圖,也不在子類中。 因此,VC.view和子視圖正在獲取觸摸事件。仍在試圖弄清楚什麼可能會阻止其他子視圖?我甚至做了一個虛擬類,除了圖像和觸摸處理程序外,基本上什麼都沒有。沒有快樂。 ? – Spanky 2009-09-07 08:19:01
是的,進一步的測試表明,只有父視圖可以處理觸摸事件。子視圖不能夠?我確定沒有任何設置爲exclusiveTouch。我也看過resignFirstResponder,沒有使用,也不是beginIgnoringInteractionEvents。並且userInteractionEnabled被設置爲YES直到頂部。這幾乎就像父視圖已成爲最前面的視圖,並阻止從z順序接收事件的一切?會不會有一些XCode設置可能導致這種情況? – Spanky 2009-09-07 08:40:43
好的,這會變得更奇怪嗎?我剛創建了一個全新的基於視圖的項目。在那個項目中,我添加了一個文件,一個UIImageView。在那我能夠處理觸摸事件。然後我創建了一個新班級。再次是UIImageView的子類,基本上沒有其他的實現。我把這個添加爲父視圖的子視圖。現在父母可以處理觸摸,但孩子不能。我從父級刪除了所有的觸摸事件處理程序,但保留它的啓用和非獨佔性。然後我從父級代碼中取出代碼並將其粘貼到子代中。仍然沒有快樂。 – Spanky 2009-09-07 09:17:10