动画按钮并在新的 UITextView 可见时将它们向下移动

Animate buttons and move them down when a new UITextView is made visible

我的代码都在Swift。我有 5 UITextFields。当 view 加载时,其中 3 个被隐藏。在前 2 个 UITextFields 下有一个“+”UIButton,它应该使额外的 UITextField 可见(最多 3 个 UITextFields,总共 5 个)。所有 5 UITextFields 都已添加到 UIStoryboard 中,它们只是设置为 hidden.

当用户点击“+”UIButton 时,"set expiration date" UIButton 和“+”UIButton 显示动画并设置在第三个 UITextField。每次用户点击“+”UIButton 时,相同的 + 和 "set expiration date" 按钮应该在新添加的(可见的)UITextField 下方滑动。

在下面的屏幕截图中看不到,但第 3、4 和 5 UITextFields 会有 "delete" UIButton。一旦他们删除其中一个,“+”和 "set expiration date" UIButtons 应该上升并保持在视图中可见的最后一个 UITextField 之下。不知道如何做到这一点。我应该以某种方式设置约束并为它们设置动画吗?我怎么知道有多少 UITextFields 在视图中可见?

这是 UIViewController 现在的样子。

解决方案相当简单,将文本字段和按钮放在 UIStackView 中,然后只需在动画块和堆栈中的文本视图上设置 isHidden 属性 view 会为你做其他一切。感谢