我想为录制按钮设置动画,当不录制时,它是一个大的红色圆圈,但在录制时,它会变成一个圆角较小的小矩形。
我按原样执行动画:
buttonWidthConstraint.constant = isRecording ? 33 : 66
UIView.animate(withDuration: 0.2) {
self.innerButtonView.layer.cornerRadius = self.isRecording ? 3 : 33
self.innerButtonView.layoutIfNeeded()
}
红色视图为innerButtonView
,其中包含约束,并且它具有宽度约束,我在其中更改constant
。
但是动画看起来像这样:
我做错了什么?我不知道它是否相关,但是当它很小的时候我也看不到3px转角半径。
答案 0 :(得分:2)
看起来还缺少动画here。 他们使用
修复了它self.layoutIfNeeded()
而不是
self.innerButtonView.layoutIfNeeded()
我还建议尝试Sandeep Bhandari的回答。