2016-02-19 39 views
1

是否有可能以某種方式接收並響應來自不可見UIView的觸摸事件。我嘗試了 - 以及從Apple文檔中讀取 - 只是設置'隱藏'將不起作用。我正在尋找替代品來達到同樣的效果。在隱藏的UIView中接收觸摸事件?

隱藏視圖從其窗口中消失,並且不會接收輸入事件。然而,它仍然在其超級瀏覽的子視圖列表中,並像往常一樣參與自動調整。用子視圖隱藏視圖會隱藏這些子視圖和它們可能擁有的任何視圖後代。這種效果是隱含的,不會改變接收者後代的隱藏狀態。

+0

你可以使用命中測試進行。但你爲什麼想要?整個想法沒有意義。如果用戶看不到視圖,則用戶不能觸摸該視圖。這就是這條規則的原因。 – matt

+0

@matt我們將UIView渲染爲紋理並在OpenGL中的四邊形上顯示它。不過,我們仍然希望UIView響應輸入來控制視圖。 – mbradber

回答

0

使其透明,而不是隱藏(alpha設置爲0)。如果這不起作用,使其幾乎透明(alpha設置爲0.1)。

+0

不幸的是,更改Alpha會影響渲染到紋理的圖像,並將其顯示爲透明。 – mbradber

+1

在渲染後執行此操作。 –

+0

或者只是製作一個不同的UIView,這個UIView的大小和位置是相同的測試器。讓那個透明。 –

0

如果一個視圖將userInteractionEnabled設置爲YES,則隱藏時它將被觸摸。例如嘗試使用UIButton進行試驗。