利用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属性
网友评论