2010-10-15 106 views
3

我遇到了一個奇怪的問題。我創建了一個UIView,發生在屏幕 (0,431,320,49)的底部,然後我想處理觸摸事件。UIView觸摸事件在屏幕底部未被解僱

當我觸摸UIView的上側時,它可以工作。但是當我觸摸底部(我的意思是,相對位置超過20px)時,touchBegan事件不會被觸發。

這聽起來像我有一個網絡狀態欄的問題,會改變我的代碼的行爲。

有人有什麼想法嗎?

問候,

馬修

+0

這是否也發生在模擬器呢? – Nimrod 2010-10-15 13:25:22

+0

請提供一些代碼或更多信息...,很難找出提供的信息。 – SegFault 2010-10-15 14:40:23

回答

3

也許有您的UIView上方的透視圖,它接收到的觸摸事件,並且它不通過這些事件到它下面的視圖。或者,我遇到的另一個案例,我將錯誤的框架分配給我的觀點。上面的視圖看起來很好看,並且觸摸事件在某個不包含在錯誤幀中的點上不能被接收。

例如,我爲我的viewController的視圖分配了幀(10,10,300,280),並向視圖添加了一個帶有幀(0,0,320,480)的子視圖。所以子視圖看起來不錯,但無法接收點(0,0)處的觸摸事件。

+0

感謝託羅我現在看看這個吧 – mat5454 2010-10-18 08:29:06

+0

好的,我找到了解決方案!我使用帶有框架的NIB(0,0,320,460)加載了我的第一個視圖,而外觀很好。我改爲(0,0,320,480),它完美無缺!非常感謝 ! – mat5454 2010-10-18 08:45:15