gpt4 book ai didi

ios - UIButton 如何用动画从左右两边缩小宽度?

转载 作者:行者123 更新时间:2023-11-28 21:44:45 25 4
gpt4 key购买 nike

我尝试通过使用以下代码减少左右点击时 UIButton 的宽度。但它只是缩小了 UIButton 的大小。代码是

    -(void)loginclickAction:(id)sender
{
self.centerZoom = [CAKeyframeAnimation animationWithKeyPath:@"transform"];
self.centerZoom.duration = 1.5f;
self.centerZoom.values = @[[NSValue valueWithCATransform3D:CATransform3DMakeScale(1, 1, 1)],[NSValue valueWithCATransform3D:CATransform3DMakeScale(.9, .9, .9)],[NSValue valueWithCATransform3D:CATransform3DMakeScale(.8,.8, .8)],[NSValue valueWithCATransform3D:CATransform3DMakeScale(.7, .7, .7)],[NSValue valueWithCATransform3D:CATransform3DMakeScale(.6, .6, .6)],[NSValue valueWithCATransform3D:CATransform3DMakeScale(.5, .5,.5)]];
self.centerZoom.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
self.loginButton.transform = CGAffineTransformMakeScale(.5,.5);
self.loginButton.alpha = 1;
[self.loginButton.layer addAnimation:self.centerZoom forKey:@"buttonScale"];
[self.loginButton setUserInteractionEnabled:NO];

}

但是输出正在缩小我不想要的 UIButton。请帮助我找到减少动画按钮宽度的方法。

最佳答案

您的转换都影响多个维度:

CGAffineTransformMakeScale(.5, .5);

这是缩放宽度 (x) 和高度 (y),仅缩放宽度:

CGAffineTransformMakeScale(.5, 1);

同样适用于

CATransform3DMakeScale(.9, .9, .9)

它正在改变 x、y 和 z 维度,应该是

CATransform3DMakeScale(.9, 1, 1)

关于ios - UIButton 如何用动画从左右两边缩小宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30621639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com