如何在iOS 9中获得堆叠的UITextFields

时间:2015-12-28 01:38:39

标签: ios objective-c iphone uitextfield uistoryboard

在iTunes Connect登录屏幕上,用户名和密码标签相互叠加,顶部弯曲,中间平放(下面的屏幕截图)。 是否有可能在Xcode 7.2故事板中实现这一目标?或者这仅仅是Apple可以做的复杂事情?

enter image description here

1 个答案:

答案 0 :(得分:3)

我为我构建的应用实现了一个非常相似的用户界面。我想出的解决方案是组合多个元素以实现所需的界面。我在一个故事板中用一些免费代码完成了这一切,但当然它也可以用代码完成。

我使用具有固定宽度和高度的UIView作为“容器”框,我将其水平居中。然后我将电子邮件(Apple ID)和密码UILabel添加到此容器视图中,在左侧对齐它们,并将它们堆叠起来以填充容器的高度。我在两个标签之间添加了高度为1pt的分隔线UIView,将其前端和尾部对齐到其容器视图。然后,添加两个UITextField,约束它们,使它们与相关标签的顶部和底部对齐,将前导设置为标签的尾部,尾部与容器视图的尾部对齐。添加任何适合的填充。

必须以编程方式完成的唯一事情是将边框应用于容器视图并使边缘变圆:

self.loginContainerView.layer.borderColor = [UIColor greenColor].CGColor;
self.loginContainerView.layer.borderWidth = 1;
self.loginContainerView.layer.cornerRadius = 15;

enter image description here

enter image description here

还不错!如果您使用UIStackView,这可能会更容易。