晚上好,
我使用 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 并重新分配/初始化它。但不幸的是,目前这对我来说不是一个选择。
任何帮助都非常感谢。