仅使用CGAffineTransformMakeTranslation(x,y)传递一个参数

时间:2012-09-05 07:16:55

标签: iphone ios xcode ipad animation

我在按钮上有多个动画,我正在使用CGAffineTransformMakeTranslation来执行此操作。

是否可以只使用一个参数,只使用“x”或仅使用“y”?

我已尝试过所有功能,但无法使其正常工作:

 button.transform = CGAffineTransformMakeTranslation(nil, 10);

 button.transform = CGAffineTransformMakeTranslation(NULL, 10);

 etc, etc...

或者将其设为“x”当前位置。如果我使用0,它会将按钮带到原始位置。

是否可以这样做?

谢谢!

3 个答案:

答案 0 :(得分:0)

传递0.沿轴的0转换不会产生任何变化,因为0是加法的标识(这就是翻译)。

button.transform = CGAffineTransformMakeTranslation(0, someYValue);

答案 1 :(得分:0)

仅在x方向翻译:

CGAffineTransformMakeTranslation(x, 0.0);

仅在y方向翻译:

CGAffineTransformMakeTranslation(0.0, y);

答案 2 :(得分:0)

CGAffineTransformTranslate保留之前的转换。 因此,您可以致电CGAffineTransformTranslate(myview.transform,0,y)或任何适合您的人。

CGAffineTransform CGAffineTransformTranslate (
   CGAffineTransform t,
   CGFloat tx,
   CGFloat ty
);