我有一个UIButton backgroundImage,用于在加载完成时显示天气状况图像。我还创建了一个替换UIButton的UIImageView来动画一系列图像作为进度指示器。
我的问题:如何修复多个屏幕尺寸的动画UIImageView
x轴错位?
以下是4.7“iPhone上的序列,红色框表示我正在谈论的图像:
首先,UIImageView动画作为进度指示器(想象它旋转,对齐是正确的)
其次,下载完成后,进度指示器被替换为带有backgroundImage的UIButton:
第三,UIImageView在4英寸iPhone上制作动画(注意x轴上的错位):
第四,下载完成,UIButton替换它,正确对齐:
以下是UIImageView *progressIndicator
的配置方式。
请注意,conditionButton
是具有天气状况backgroundImage的UIButton:
self.progressIndicator = [[UIImageView alloc] initWithFrame:self.conditionButton.frame];
self.progressIndicator.contentMode = UIViewContentModeCenter;
self.progressIndicator.animationImages = @[...long series of images...];
self.progressIndicator.animationDuration = 0.5f;
[self.conditionButton setBackgroundImage:[UIImage imageNamed:@"empty.png"] forState:UIControlStateNormal];
[self.progressIndicator startAnimating];
[self.view addSubview:self.progressIndicator];
我很确定问题出在
self.progressIndicator = [[UIImageView alloc] initWithFrame:self.conditionButton.frame];
但我不知道如何解决这个问题。
当我切换到5.5“iPhone时出现同样的问题。我没有自动布局警告,并且适用于conditionButton的约束是:
Align Center X to superview
Width = 94
Height = 94
Bottom and Top space to nearest neighbor = default
非常感谢任何帮助!