我知道我错过了一些东西,因为这必须是很容易实现的东西。
我的问题是,我的“加载屏幕”(启动后立即出现的屏幕)中有一个 UIImageView,其中包含 3.5 英寸和 4 英寸尺寸屏幕的两个不同图像。在该图像的某个位置,我放置了一个 UIActivityIndicator,以告诉用户应用程序正在后台加载某些内容。两个图像的那个位置不一样,因为其中一个明显高于另一个,所以我想设置一个自动布局约束,允许我将该活动指示器放置在不同的高度,具体取决于应用程序是否在iPhone 5 与否。
如果没有自动布局,我会将视图的frame.origin.y设置为300(例如),然后在ViewController的viewDidLoad方法中,我会询问应用程序是否在iPhone 5中运行,所以我' d 将值更改为例如 350。我不知道如何使用自动布局来执行此操作,我认为它必须非常简单。
您可以创建一个NSLayoutConstraint
视图控制器上的插座并将插座连接到 xib 或故事板中活动指示器的 Y 约束。然后,添加一个updateViewContraints
方法到您的视图控制器并根据屏幕尺寸更新约束的常量。
这是一个例子updateViewConstraints
:
- (void)updateViewConstraints {
[super updateViewConstraints];
self.activityIndicatorYConstraint.constant =
[UIScreen mainScreen].bounds.size.height > 480.0f ? 200 : 100;
}
当然,您需要输入适当的值而不是200
and 100
。您可能想要定义一些命名常量。另外,别忘了打电话[super updateViewConstraints]
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)