动画UILabel不顺畅

pro*_*ock 6 iphone objective-c

我试图动画UIlabel首先变大,然后缩小回原来的帧.扩大工作按预期,但不缩小.当我用下面的代码收缩标签时,尺寸会在原点移动之前先调整.这会导致两步动画不顺畅.

这是我的代码:

CGRect rect = label.frame;
[UIView animateWithDuration:.2
                      delay: 0.1
                    options: UIViewAnimationOptionBeginFromCurrentState
                 animations:^{
                     label.frame = CGRectMake(rect.origin.x + 4,
                                                                        rect.origin.y + 4,
                                                                        rect.size.width-8,
                                                                        rect.size.height-8);
                 }
                 completion:^(BOOL finished){
                 }];
Run Code Online (Sandbox Code Playgroud)

jmo*_*man 2

您可以尝试对动画块内的标签应用变换,而不是调整矩形。类似于以下几行的增长/收缩动画:

label.transform = CGAffineTransformMakeScale(1.5, 1.5); //grow
label.transform = CGAffineTransformMakeScale(1, 1);     //shrink
Run Code Online (Sandbox Code Playgroud)