尝试更改动画块中按钮的帧时出现问题。

时间:2011-07-31 00:24:31

标签: iphone objective-c animation uikit uibutton

我创建了一个带有自定义图像的按钮,并将其显示在一个框架中。 现在我正在尝试在动画块内更改按钮的框架。 不幸的是,它似乎不起作用 - 框架没有像预期的那样改变。

我写了以下代码:

UIButton *movingButton = [[UIButton buttonWithType:UIButtonTypeCustom] retain];
UIImage *image = [UIImage imageNamed:@"A_normal_image.png"];
[movingButton setImage:image forState:UIControlStateNormal];
movingButton.frame = CGRectMake(160, 240, 0, 0);
[movingButton addTarget:self action:@selector(moveButton:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:movingButton];

CGRect newFrame CGRectMake(20, 120, 44, 88);
[UIView animateWithDuration:0.5 animations:^{ movingButton.frame = newFrame; }];
[movingButton release];

我错过了什么吗?那我该怎么做呢?

提前致谢, Sagiftw

1 个答案:

答案 0 :(得分:0)

你应该使用浮点数而不是整数:

movingButton.frame = CGRectMake(160, 240, 0, 0);

为:

movingButton.frame = CGRectMake(160.0f, 240.0f, 0.0f, 0.0f);