-(void)signUpAndLoginAnimation:(BOOL)showSignUp {
CGFloat LogInWidthChange = (showSignUp)?-120:120;
[UIView animateWithDuration:0.3f
animations:^{
CGRect newFrame = self.logInView2.frame;
newFrame.origin.x -= LogInWidthChange;
newFrame.size.width += LogInWidthChange;
CGFloat newSizeX = self.logInView2.frame.size.width + LogInWidthChange;
CGFloat ofsetX = LogInWidthChange;
[self.logInView2 setFrame:CGRectMake(self.logInView2.frame.origin.x-ofsetX, self.logInView2.frame.origin.y, newSizeX, self.logInView2.frame.size.height)];
}];
}发现写复杂了:
[UIView animateWithDuration:0.3f
animations:^{
CGFloat changeWidth = (showSignUp)?-120:120;
[self.logInView2 setFrame:CGRectMake(self.logInView2.left-changeWidth, self.logInView2.top, self.logInView2.width + changeWidth, self.logInView2.height)];
}];原文地址:http://blog.csdn.net/rainlesvio/article/details/38819987