我有一个UIView,它包含了几个子控件,如标签和文本框。 它还有一个开关控件。
我想根据开关的变化来隐藏/显示(类似可折叠)父视图的某部分。 但是当我尝试使用superview的常量来实现时,仅改变了superview的高度,而所有子视图并未被隐藏。
你能帮我找出原因吗?
谢谢,
我想根据开关的变化来隐藏/显示(类似可折叠)父视图的某部分。 但是当我尝试使用superview的常量来实现时,仅改变了superview的高度,而所有子视图并未被隐藏。
你能帮我找出原因吗?
谢谢,
将 UIView 的属性 clipsToBounds 设置为 true。 这可以防止子视图在其框架超出父视图边界时被绘制。
例如:
设置 UIView 的 clipsToBounds 属性为 true。
当子视图框架超出父视图边界时,此设置可以防止这些子视图被绘制。
superView.clipsToBounds = true
请注意,对于图层,您可以使用以下内容:
superView.layer.masksToBounds = true
有许多UIView
的方法可以让您修改视图层次结构。
bringSubviewToFront:
sendSubviewToBack:
insertSubview:atIndex:
insertSubview:aboveSubview:
insertSubview:belowSubview:
exchangeSubviewAtIndex:withSubviewAtIndex:
您可以根据需求使用其中任何一种。