2011-04-20 58 views
1

是否有可能使UIView僅出現在屏幕的有限區域內,特別是在動畫時? (當它到達邊界時,它應該簡單地在邊界點切斷,就好像它被前面的物體所遮擋一樣。)我需要這個,因爲我有一個由UIButtons組成的展開式菜單,而且我不會當關閉菜單時,不希望菜單超出工具欄的邊緣。謝謝!僅在屏幕的有限區域內保持UIViews可見

(或者,在到達邊界隱藏整個的UIView也將是可以接受的。我只是不知道如何檢查此條件不連續查詢中心屬性。)

回答

3

您可以定義剪切區域爲您的UIVIew使用clipsToBounds屬性。如果您使用CoreAnimation爲您的視圖設置動畫,您可能還需要查看CALayer對象的maskToBounds屬性(每個UIVIew都有一個類型爲CALayer的layer屬性)。

從UIView類參考:

通常情況下,一個子視圖的可視面積 不剪切其 上海華盈的範圍,但在iOS中,你可以使用 clipsToBounds屬性來改變這種 行爲。

+0

它的工作原理,謝謝! – Archagon 2011-04-20 02:39:48