利用tableView(_:willDisplayCell:forRowAtIndexPath:) 实现动画

利用tableView(_:willDisplayCell:forRowAtIndexPath:)实现加载的时候cell的动画效果

override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {

    cell.alpha = 0

    let x = -UIScreen.mainScreen().bounds.width

    cell.transform = CGAffineTransformMakeTranslation(x, 200)

    UIView.animateWithDuration(1.0) {

        cell.alpha = 1

        cell.transform = CGAffineTransformIdentity

    }

}



override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {

    let rotationRadians = CGFloat(M_PI_2)

    let rotationTransform = CATransform3DMakeRotation(rotationRadians, 0, 0, 1)

     //let slideTransform = CATransform3DTranslate(CATransform3DIdentity, -500, 100, 0)

    cell.layer.transform = rotationTransform

    UIView.animateWithDuration(1.0) {

    cell.layer.transform = CATransform3DIdentity

    }

}


CATransform3D使用的时候,必须使用视图的layer属性

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容