0

我的应用中有两个视图,viewA(绿色)和 subviewB(红色)。我的应用程序的初始状态如下: 在此处输入图像描述

我使用以下代码来更改 viewA 的转换:

CGFloat scale = 0.4;
self.viewA.layer.sublayerTransform = CATransform3DMakeScale(scale, scale, 1);

结果,子视图B被缩放和平移

在此处输入图像描述

但是我的应用程序有一个问题:我需要 subViewB 仍然在 viewA 的左上角,但是 subviewB 看起来移动到 viewA 的中心,很奇怪 subviewB 的原点仍然是(0,0),我该怎么做才能将 subviewB 移动到左上角?

4

2 回答 2

1

只需尝试给出的代码,

subviewB.transform = CGAffineTransformScale(test.transform, scale, scale);

它会工作:)

于 2013-05-08T09:38:22.880 回答
0

我在缩放和自动布局方面遇到了同样的问题,但在 uiscrollview 中。最后我使用 CATransform3DMakeScale 来解决我的所有问题。

https://github.com/hansdesmedt/AutoLayout-scrollview-scale

这是一个 UIScrollView 的示例,它具有完全在 AutoLayout 中制作的自定义分页,并且可以通过长按和点击来缩放 (CATransform3DMakeScale)。iOS 6 和 7 兼容。

于 2013-12-23T10:02:29.540 回答