保持UIView仅在屏幕的有限区域内可见

时间:2011-04-20 01:14:41

标签: iphone objective-c cocoa-touch ios

是否可以使UIView仅出现在屏幕的有限区域内,尤其是在制作动画时? (当它到达边界时,它应该简单地在边界处切断,好像它被前面的物体遮挡了。)我需要这个,因为我有一个由UIButtons组成的推出菜单,我不喜欢关闭时,不希望菜单超出工具栏的边缘。谢谢!

(或者,在到达边界时隐藏整个UIView也是可以接受的。我只是不知道如何在不连续查询中心属性的情况下检查这种情况。)

1 个答案:

答案 0 :(得分:3)

您可以使用clipsToBounds属性为您的UIVIew定义剪裁区域。如果您使用CoreAnimation为视图设置动画,您可能还希望查看CALayer对象的maskToBounds属性(每个UIVIew都具有CALayer类型的layer属性)。

来自UIView类参考:

  

通常,子视图的可见区域是   没有剪裁到它的边界   superview,但在iOS中你可以使用   clipsToBounds属性来改变它   行为。