如何在视图控制器中创建幻灯片动画?

时间:2017-12-28 20:24:49

标签: ios swift xcode

我想动画视图从左侧滑入和滑出。
到目前为止我做了什么:

enter image description here

当用户点击左上角的图标时,会触发一个动作(显示/隐藏菜单视图)。

“菜单视图”包括暗遮罩视图,半透明白色视图和所有三个视图(标签+图像)。
现在这个菜单视图将滑入和滑出。

我尝试在菜单视图中添加一个约束:

func viewDidLoad() {
    super.viewDidLoad()
    menuView.translatesAutoresizingMaskIntoConstraints = false
    menuViewLeftConstraint = NSLayoutConstraint(item: menuView, attribute: .left, relatedBy: .equal, toItem: view, attribute: .left, multiplier: 1, constant: -1000)
    menuViewLeftConstraint.isActive = true
}

我在用户执行的每次点击时切换常量(-1000或0)。

但动画看起来并不像我想的那样。

1 个答案:

答案 0 :(得分:3)

为什么以编程方式使用固定常量?将uiview(尾随)的右侧设置为等于superciew(uiviewcontroller)的前导(左侧)。创建该约束的出口,并通过添加一个等于uiview宽度的常量来动画它,可能是一些偏移量。

另外,您可以使您的子视图等于您的超视距宽度 - someoffset,等于height -someoffset,centerX和centerY到superview并为centerX约束设置动画。