我知道如何在sprite kit之类的东西中实现这一点,但只有一个普通的ViewController,我有点迷失 - 现在我的按钮和我的UITextfield设置在我的xib文件上。现在,当单击按钮时,我的文本字段从隐藏变为非,这很好。
问题是我需要让我的按钮向上滑动(如在动画中一样)以显示"显示"单击时的文本字段。因为文本字段位于按钮下方。单击另一个按钮时,我希望按钮向下滑动到其原始位置。我不知道如何实现这些动画。
以下是我需要的图片:
所以蓝色按钮会在点击时触发向上移动。然后,如果按下另一个按钮,蓝色按钮将移回文本字段上的原始位置。
我怎样才能做到这一点?
答案 0 :(得分:1)
如果您未在UITableView
中显示这些内容,可以尝试以下选项:
viewDidLoad
中,您将设置这些高度限制' constant
值为0.这将导致这些视图有效消失,而您的其他视图应根据其约束填补它们留下的空白。当您按下其中一个按钮时,如果您希望隐藏这些视图的高度约束为0,则可以更新哪些视图应该是可见的,或者如果您希望它们显示,则更新您之前保存的值。更新高度后,请致电
UIView.animateWithDuration(howLongTheAnimationLasts) {
self.view.layoutIfNeeded()
}
应该为高度值的变化设置动画。
或者,您可以尝试将选项放在UITableView
中并使用tableView:heightForRowAtIndexPath:
更改其高度,并在其高度发生变化时重新加载单元格。