IOS 动画

fans1991 发布于 2013/04/18 17:13
阅读 233
收藏 0
-(void) move:(NSTimer *) aTimer
{
    CGFloat  angle = theta * (M_PI /100.0f);
    CGAffineTransform  transForm = CGAffineTransformMakeRotation( angle );
    
    theta = (theta +1 ) % 200 ;
    
    float  degree = cos(angle);
    
    if( degree <0.0 )
    {
        degree *= -1.0f ;
    }
    degree += 0.5f ;
    
    CGAffineTransform  scaled = CGAffineTransformScale(transForm , degree , degree );
    [[self.view  viewWithTag: 999 ]setTransform: scaled ];

}
- (IBAction)transForm:(id)sender 
{
    timer = [NSTimer  scheduledTimerWithTimeInterval:0.03f  target: self  selector:@selector(move:) userInfo:  nil  repeats: YES ];
}
在按钮下做了动画,为什么一直继续点,动画跑的越来越快??? 求解

以下是问题补充:

@fans1991:我是两个按钮来测试的,一个strat,一个来Stop,就一直点了start,知道了,谢谢各位u。。。 (2013/04/18 18:28)
加载中
0
doudou1989
doudou1989
你的timer 一直在runloop中,实际上你每次都起一个新的timer,所以越来越快。
0
dake
dake
下一次点击的时候..要取消上一次的timer
返回顶部
顶部