iOS开发

IOS最简单的实现动画的方法(IOS12,Swift4.2,Xc

2018-10-09  本文已影响380人  Lebus
点击加号出现动画

以实现顶部标题的“打包清单”-->“选择一个”的垂直(水平方向同理)动画为例,虽然简单,但这也是最基本最核心的ios动画知识了。

在storyboard中为标题定义两个constraint,并都拉个outlet,如下图代码区的最下面两行

屏幕快照 2018-10-08 下午11.39.41.png

刚刚在storyboard上创建的两个约束,一个是动画开始时用的,还有一个是动画结束时用的。

1.把结束时约束的优先级改低一点---为性能考虑,
2.乘数变为0.67(原来是1)---你可以自由发挥
3.install勾去掉---告诉app一开始不管这个约束

屏幕快照 2018-10-08 下午11.40.07.png

constraint属性面板里面这些属性不懂的话可以实际操作看一看,很简单不赘述。

viewcontroller核心代码

var menuIsOpen = false //用户是否点击了加号
//按钮的点击事件
@IBAction func toggleMenu(_ sender: AnyObject) {
    menuIsOpen = !menuIsOpen

    //isAvtive告诉app是否用这个约束
    titleCenterY.isActive = !menuIsOpen
    titleCenterY_open.isActive = menuIsOpen

    //实现动画---这里用最简单的一款,其实够用了  
   UIView.animate(
    withDuration:0.3, 
    animations: {
        //更新布局
        self.view.layoutIfNeeded()
    })
}

其余动画大同小异,只要定义好动画开始时的constraint和结束时的constraint,然后加个animate函数就行。

以上。

上一篇 下一篇

猜你喜欢

热点阅读