2

晚上好,

我使用 CGAffineTransformScale 缩小 UIView。

[UIView animateWithDuration:0.3 animations:^{
            gridContainerView.transform = CGAffineTransformScale(CGAffineTransformIdentity, 0.2, 0.2);
            gridContainerView.alpha = 0.0;
        } completion:^(BOOL finished) {
            // show UIView B
        }];

并将其缩放回原来的大小:

[UIView animateWithDuration:0.3 animations:^{
    gridContainerView.transform = CGAffineTransformIdentity;
    gridContainerView.alpha = 1.0;
} completion:^(BOOL finished) {
    // remove UIView B
}];

这工作正常。gridContainerView 被缩小到屏幕的中心。但是,如果我更改设备方向(到 ae 横向),中心会以某种方式移动到左下角。一旦我改变方向,转换就不会再到屏幕的中心了。解决此问题的唯一方法是释放 gridContainerView 并重新分配/初始化它。但不幸的是,目前这对我来说不是一个选择。

任何帮助都非常感谢。

4

0 回答 0