我对某事感到好奇。在我的应用程序中,我正在运行一个动画,其中视图被调整了一点。我正在创建这样的转换:
CGAffineTransform resize = CGAffineTransformMakeScale(0.8, 0.8);
但是,当我将这种转换应用到我的视图并观察它运行时,它会从顶部调整大小并向底部收缩。我想要的是它在所有方面均匀调整大小并向中心收缩,就好像“锚点”在中心一样。你知道我在说什么?这可能吗?
我对某事感到好奇。在我的应用程序中,我正在运行一个动画,其中视图被调整了一点。我正在创建这样的转换:
CGAffineTransform resize = CGAffineTransformMakeScale(0.8, 0.8);
但是,当我将这种转换应用到我的视图并观察它运行时,它会从顶部调整大小并向底部收缩。我想要的是它在所有方面均匀调整大小并向中心收缩,就好像“锚点”在中心一样。你知道我在说什么?这可能吗?
首先将 Quartz 框架添加到你的项目中,并导入 Quartz 头文件
#import <QuartzCore/QuartzCore.h>
然后你可以像这样设置视图的锚点
myView.layer.anchorPoint = CGPointMake(0, 0);
AnchorPoint 点是介于 0 和 1 之间的值。0,0 是 iPhone 的左上角。
首先应用 aCGAffineTransformMakeTranslation
将原点移动到中心 - 将它们合成为单个变换CGAffineTransformConcat