动画来往于价值

时间:2011-06-17 16:15:33

标签: iphone

我正试图在屏幕上制作标签动画,但我似乎无法让它正常工作。目前,它将视图设置为其他视图的动画。

此外,我不能在需要时“停止”动画。我在音乐播放器中使用它来滚动UIView上的曲目名称,当我点击Next或Prev时,它必须停止动画中期并重新开始。

- (void)startAnimation {

    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:10];   
    [UIView setAnimationDelegate:self]; 
    [UIView setAnimationDidStopSelector:@selector(animationDidStop:)];

    CGRect frame = trackName.frame;
    frame.origin.x = -50;
    trackName.frame = frame;

    [UIView commitAnimations];
}

- (void)animationDidStop:(id)sender {
    NSLog(@"animationDidStop");

    CGRect frame = trackName.frame;
    frame.origin.x = 194;
    trackName.frame = frame;

    [self startAnimation];
}

1 个答案:

答案 0 :(得分:1)

我假设您要做的是为标签设置动画,使其向左移动50个像素。如果是这样,您需要更改行:

frame.origin.x = -50

frame.origin.x -= 50;

问题是您正在将帧的新原点设置为-50,即距离视图左侧50像素。相反,你需要从它的当前位置减去50个像素,使其相对于它的位置移动50个像素。

相关问题