2012-11-13 128 views
0

我有一個視圖控制器,其中我編程創建了一個視圖,其中包含幾個按鈕以充當各種菜單。這個視圖是用屏幕外的座標初始化的(例如y的原點爲-100)。如果我調整視圖的y原點(使用動畫),視圖可以很好地滑動,我可以觸摸按鈕並讓它們按照我的意願進行操作。但是,如果我調整視圖控制器視圖框的y原點,視圖中的按鈕將不再識別該觸摸。我發現通過調整視圖控制器的視圖框架原點而不是視圖的原點,我可以獲得整個屏幕滑動的效果,以顯示菜單而不是菜單滑動到位,它幾乎將其拉下。但菜單不再起作用。UIButton沒有收到觸摸事件

有人對此有所瞭解嗎?

+1

謝謝,現在我知道,我會繼續保持最佳狀態。 – r0ddy

+0

如果你的菜單超出了超視界的範圍,它不會檢測到觸摸。確保父母的視圖也在屏幕中,當你觸摸時,沒有任何視圖的框架設置爲負值。 – iDev

+0

通過調整視圖控制器的視圖框y原點爲100(如果我的菜單視圖已初始化爲-100),它將菜單拉入視圖,所以菜單現在位於y座標0處。或者,實際上不是除非我專門調整菜單視圖的座標嗎? – r0ddy

回答

1

我很久以前就有過這個問題。我記得我有一個視圖控制器,其大小爲800x800點,座標600,600處的可見視圖之外有一個按鈕。我爲控制器設置動畫,以便在屏幕上顯示按鈕。觸摸按鈕被忽略。 基本上,除了superview的320x480界限之外的任何東西,觸摸都會被忽略,儘管將視圖控制器設置到位。

+0

我們的問題是相似的,但不完全相同。如果我將菜單視圖製作成動畫,它對我來說工作正常。但是,如果我爲視圖控制器的視圖設置動畫以向下移動屏幕,這似乎也拉下菜單視圖,那麼它不會。就好像我沒有專門將這個視圖放到位置,它也不會收到觸摸事件。 – r0ddy