按下按钮,它出现在屏幕上的其他位置

时间:2014-01-03 23:59:52

标签: ios uibutton

我有这段代码,所以它会改变位置一次,但是当你仍然触摸时会停留在那里

- (IBAction)fade {
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    [button setAlpha: 0];
    [UIView commitAnimations];
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    [button setAlpha: 1];
    [UIView commitAnimations];
    button.center = CGPointMake(152 + 16,326 + 16);
    button.center = CGPointMake(200 + (kPlatformWidth/2),300 + (kPlatformHeight/2));
}

如何让它从这里进入随机位置?

1 个答案:

答案 0 :(得分:1)

您不应该使用beginAnimations:context:

引用文档:

  

在iOS 4.0及更高版本中不鼓励使用此方法。你应该用   基于块的动画方法来指定你的动画。

您应该使用animateWithDuration形式的新方法:动画:

至于如何使按钮移动到随机位置,请使用arc4random_uniform计算新的x和y位置,并将这些值用作视图中心的目的地。