首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将两个子视图固定在一起的自动布局

将两个子视图固定在一起的自动布局
EN

Stack Overflow用户
提问于 2013-09-13 14:50:37
回答 2查看 133关注 0票数 1

免责声明:我是iOS开发的新手。这是我第一次尝试自动布局。

我有一个容器UIView,它包含一个UIImageView和一个UILabel

当我单击视图控制器底部的UIButton时,我希望UIImageView消失,UILabel自动到达顶部。

请向我介绍一些很好的资源来学习自动布局原理。谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-09-13 15:05:09

如果可以确定开始和结束的布局约束,则可以使用以下模板对其进行动画化:

代码语言:javascript
复制
// add/remove constraints here or even change the constants of a current constraint
[view setNeedsUpdateConstraints];

[UIView animateWithDuration:0.25f animations:^{
    [view layoutIfNeeded];
}];

读一读可可AutoLayout指南

还可以在AutoLayout上观看WWDC的视频。WWDC 2012 232自动布局是一个很好的例子。

票数 0
EN

Stack Overflow用户

发布于 2013-09-13 16:21:50

最简单的方法就是

  • 定义图像视图高度的约束;
  • 为该约束定义一个IBOutlet;以及
  • 单击按钮时,将图像视图的高度约束的constant设置为0,然后按照bandejapaisa的建议执行layoutIfNeeded: [UIView动画:0.25f动画:^{ view layoutIfNeeded;}];

如果正确定义了所有其他约束(例如,按钮的顶部约束是图像视图,而不是superview,则该按钮没有对superview的底部约束,等等),那么这将产生期望的效果。另外,如果您将图像视图的contentMode更改为类似于“方面填充”的内容,那么请确保定义图像视图以剪辑子视图(这样就不会在零高度图像视图之外溢出图像)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18789275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档