我的 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,似乎没有任何效果。
最佳答案
您正在将 frame
值设置为您的 bounds
,这会取代 View 坐标系的原点。始终如一地使用 bounds
,它应该可以工作。
关于ios - UIButton 中的内容在动画之后移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16179089/