1

我对某事感到好奇。在我的应用程序中,我正在运行一个动画,其中视图被调整了一点。我正在创建这样的转换:

CGAffineTransform resize = CGAffineTransformMakeScale(0.8, 0.8);

但是,当我将这种转换应用到我的视图并观察它运行时,它会从顶部调整大小并向底部收缩。我想要的是它在所有方面均匀调整大小并向中心收缩,就好像“锚点”在中心一样。你知道我在说什么?这可能吗?

4

2 回答 2

4

首先将 Quartz 框架添加到你的项目中,并导入 Quartz 头文件

#import <QuartzCore/QuartzCore.h>

然后你可以像这样设置视图的锚点

myView.layer.anchorPoint = CGPointMake(0, 0);

AnchorPoint 点是介于 0 和 1 之间的值。0,0 是 iPhone 的左上角。

于 2011-05-30T23:34:01.633 回答
1

首先应用 aCGAffineTransformMakeTranslation将原点移动到中心 - 将它们合成为单个变换CGAffineTransformConcat

于 2011-05-30T23:31:28.343 回答