如何使用autolayout进行扩展视图?

时间:2016-12-16 05:06:11

标签: xcode autolayout swift3

(我不太懂英语)。我有一个问题:你能举例说明我的问题。我想制作扩展名单。即我有一个控制器视图,当我点击其中一个字符串时,会出现一个列表,其中包含此强大的数据,以及其他字符串在下方移位。

1 个答案:

答案 0 :(得分:0)

您可以通过高度的附加(!)约束来实现此目的,通过该约束可以将视图的高度设置为零:

  1. 在故事板(或代码)中定义此约束。
  2. 为约束创建出口属性。这必须是一个强大的属性,因为停用约束会将其从相应的视图中删除。
  3. 将此约束赋予最高优先级。其他影响高度的限制应该有较小的优先级。
  4. 您现在可以通过激活和停用约束来隐藏和显示视图。
  5. 可以使用UIKit动画完成更改动画:

    UIView *theView = self.view; // Must be a parent of the animated view
    
    self.heightConstraint.active = isHidden;
    [UIView animateWithDuration:0.25 animations:^{
        [theView layoutIfNeeded];
    }