2

UIButton我的动画后有问题。让我解释一下步骤。

我有一个按钮,里面有一张图片。当我点击我的按钮时,我会为框架设置动画以获得较大的宽度,然后当我的框架大小合适时,我会添加我的文本(所以左边有我的图像,右边有文本)。
首先,当我开始动画时,我的图像完全在左侧,我不知道为什么,当我回到初始帧时,我的图像完全不在我的位置UIButton,仍然不知道为什么:(

有一些屏幕需要更多解释:

http://pastebin.com/6MQ5xyA8(对不起,没有10分信誉我不能粘贴多个链接)

这是我的代码:

// Extand
CGRect loginSize = self.nvButtonConnect.frame;
loginSize.size.width = 297;
loginSize.size.height = 48;
CABasicAnimation *sizeAnimation = [CABasicAnimation animationWithKeyPath:@"bounds"];
sizeAnimation.fromValue = [NSValue valueWithCGRect:self.nvButtonConnect.frame];
sizeAnimation.toValue = [NSValue valueWithCGRect:loginSize];
[sizeAnimation setRemovedOnCompletion:NO];
sizeAnimation.fillMode = kCAFillModeForwards;

// Go back (in another method)
CGRect loginSize = self.nvButtonConnect.frame;
loginSize.size.width = 48;
loginSize.size.height = 48;
CABasicAnimation *sizeAnimation = [CABasicAnimation animationWithKeyPath:@"bounds"];
sizeAnimation.fromValue = [NSValue valueWithCGRect:self.nvButtonConnect.frame];
sizeAnimation.toValue = [NSValue valueWithCGRect:loginSize];
[sizeAnimation setRemovedOnCompletion:NO];
sizeAnimation.fillMode = kCAFillModeForwards;

你有什么想法吗?
我尝试使用自定义 contentEdgeInset、TitleEdgeInset、ImageEdgeInset,似乎没有任何效果。

4

1 回答 1

1

您正在将frame值设置为 your bounds,这将替换视图坐标系的原点。bounds始终如一地使用它应该可以工作。

于 2013-04-25T13:01:35.683 回答