23、iOS动画编程:从基础到高级应用

iOS动画编程:从基础到高级应用

1. 重写默认动作

可以通过重写 defaultAction(forKey:) 方法来实现自定义的动画效果。以下代码展示了如何在 CALayer 子类中实现当设置 contents 属性时,自动触发从左侧的推入过渡效果:

override class func defaultAction(forKey key: String) -> CAAction? {
    if key == #keyPath(contents) {
        let tr = CATransition()
        tr.type = .push
        tr.subtype = .fromLeft
        return tr
    }
    return super.defaultAction(forKey:key)
}

当需要从 action(for:forKey:) defaultAction(forKey:) 方法返回 NSNull() 时,需要将其转换为 CAAction 类型以消除编译器警告。

2. 使自定义属性隐式动画化

2.1 实现步骤

要使自定义层的 thickness 属性能够进行隐式动画,需要完成以下步骤:
1. 实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值