2013-07-11 65 views
1

我有一个UIView作为绘制签名的面板,我想出了一些代码来扩展和缩小面板时点击。它似乎工作得不错,但代码似乎很笨拙,我想知道是否有更好的方法来实现这一点。调整水龙头的视图

我加了点触手势识别器的视图,迷上它,并有这在我的.m

BOOL clientSigLarge; 

- (IBAction)handleSigTap:(id)sender 
{ 
    CGRect frame = self.clientSigView.frame; 

    if (clientSigLarge) 
    { 
     frame.size.height -= 400; 
     frame.size.width -= 350; 
     frame.origin.x += 350; 
     frame.origin.y += 400; 
     self.clientSigView.frame = frame; 
     clientSigLarge = NO; 
    } 
    else 
    { 
     frame.size.height += 400; 
     frame.size.width += 350; 
     frame.origin.x -= 350; 
     frame.origin.y -= 400; 
     self.clientSigView.frame = frame; 
     clientSigLarge = YES; 
    } 
} 

任何提示赞赏。

回答

1

能让它更顺畅,使用动画块,如果你的缩放,比例是固定的(如2X,3X等),然后使用CGAffineTransformScale

[UIView animateWithDuration: 1 
         delay: 0 
        options: (UIViewAnimationOptionCurveLinear | UIViewAnimationOptionAllowUserInteraction) 
       animations:^{myView.transform = CGAffineTransformScale(CGAffineTransformIdentity, xScaleValue, yScaleVale);} 
       completion:^(BOOL finished) { } 
]; 

所以如果其他条件只是改变X和Y比例值并使用相同的块。

这里是一个参考链接animations

希望这是你正在寻找

+0

感谢什么,我给这是一个尝试。 – Robert

相关问题