我有一个 UIImageView
作为我的控件背后的背景,旋转设备时出现问题。我想使用不同的 image
取决于 orientation
.
那么处理这个问题的最佳方法是什么?
添加和删除每个 UIImageView
横向和纵向?
既有 View 又有隐藏/显示合适的 View ?
或者也许有一些类(class)或UIObject
处理那个?
TIA
最佳答案
您可以使用它变得时髦,并叠加两个背景图像,一个具有 alpha = 1.0,另一个具有 alpha = 0.0。然后,当您旋转时,使用动画将 alpha 分别转换为 0.0 和 1.0,以获得淡入淡出效果。如果你选择这种方式,我建议把动画代码放在-viewWillAppear:
例如,像这样:
[UIView beginAnimations:nil context:NULL]; {
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:1.0];
[UIView setAnimationDelegate:self];
if (toOrientation == UIInterfaceOrientationLandscape) {
landscapeView.alpha = 1.0;
portraitView.alpha = 0.0;
}
else {
landscapeView.alpha = 0.0;
portraitView.alpha = 1.0;
}
} [UIView commitAnimations];
关于更改设备旋转时的iphone背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6553999/