我在视图中有按钮,标签等。有些元素没有高度,所以如果单击一个按钮,我想设置所需的高度。到目前为止没有问题
我希望以下元素向下滑动并安排自己新的。我尝试了FlowLayoutController
和Auto Layout Constraints
,但两者都没有达到我的要求。
我看到的唯一方法是计算所有元素,并在添加或调整一个项目时以编程方式排列它们。
还有其他办法吗?
答案 0 :(得分:0)
如果你想调整一个UIView的框架并使其动画,就像它们滑出/向下/任何你喜欢的一样。你可以使用一些简单的动画机制。
[UIView beginAnimations:nil context:NULL];
//[UIView setAnimationDuration:2];
//change your view's frame (height) here
[UIView commitAnimations];
这应该为你做的伎俩!祝你好运;)
答案 1 :(得分:0)
查看view autolayout possibilities,即可启用视图的自动布局。或者,您可以在'layoutSubviews'方法中自己完成。
答案 2 :(得分:0)
我在这里找到了解决方案:
Moving elements when changing UIView frame
重要的一句话是:不要将帧与自动布局结合起来,这会给你带来不可预测的结果。
所以我用IBOutlet和self.textViewHeightConstraint.constant
来设置高度。
现在它的效果非常好。