Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 正确使用CGAffineTransformMakeScale_Ios_Objective C_Core Animation_Uiviewanimation_Cgaffinetransform - Fatal编程技术网

Ios 正确使用CGAffineTransformMakeScale

Ios 正确使用CGAffineTransformMakeScale,ios,objective-c,core-animation,uiviewanimation,cgaffinetransform,Ios,Objective C,Core Animation,Uiviewanimation,Cgaffinetransform,我有一个ui按钮,它是用故事板布置的。按钮只包含一个图像。当点击按钮时,我想设置按钮大小的动画-减小大小,然后将其恢复到原始大小 我使用了以下代码- [UIView animateWithDuration:2.0 animations:^{ _favButton.transform = CGAffineTransformMakeScale(0.5, 0.5); }completion:^(BOOL finished) { [UIView animateWithDuration:2

我有一个
ui按钮
,它是用故事板布置的。按钮只包含一个图像。当点击按钮时,我想设置按钮大小的动画-减小大小,然后将其恢复到原始大小

我使用了以下代码-

[UIView animateWithDuration:2.0 animations:^{
    _favButton.transform = CGAffineTransformMakeScale(0.5, 0.5);
}completion:^(BOOL finished) {
    [UIView animateWithDuration:2.0 animations:^{
          _favButton.transform = CGAffineTransformMakeScale(1, 1);
    }];
}];
此代码在屏幕上移动我不想要的按钮。我希望固定按钮的
中心
,并设置大小动画


我没有在故事板中为按钮使用任何
顶部约束。我如何纠正这种行为

如果打开了“自动布局”,则需要将其关闭

但根据你的描述,这似乎不是你的问题

我将执行以下操作以在缩放时重新调整中心:

CGPoint cP = _favButton.center;

[UIView animateWithDuration:2.0 animations:^
{
    _favButton.transform = CGAffineTransformMakeScale(0.5, 0.5);
    _favButton.layer.position = cp;
}
completion:^(BOOL finished) 
{
    [UIView animateWithDuration:2.0 animations:^
    {
        _favButton.transform = CGAffineTransformMakeScale(1, 1);
        _favButton.layer.position = cp;
    }];
}];

希望这有帮助。

SWIFT 3

button.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)

您是否为正在处理的xib启用了自动布局?如果是这样,请取消选中视图检查器中的“自动布局”选项,然后再次尝试运行代码。如果启用了自动布局选项,即使您没有明确指定任何约束,约束也会在生成时生成。感谢@Barbarrodeker的帮助!