如何创建没有情节提要的应用程序?
正如我在第一篇文章中所说,这没什么大不了的,以编程方式制作UI的原因很多,最大的原因之一是90%的公司不使用情节提要,知道让我们开始登录屏幕吧……
在现实世界中,您将从设计师那里获得屏幕,或者,如果您自己完成所有工作,则可以在素描或photoshop中创建一些设计,或者只是在纸上绘图,知道我们将专注于此,那么我们将尝试使其更漂亮
首先,让我们在项目导航器中创建两个文件,一个将是LoginController,另一个将是我们的LoginView。这很简单,我们都知道要这样做…
在继承自UIView超级类的LoginView类中,让我们创建一些属性,密码和电子邮件文本字段,就像您已经猜到的那样,并使用一个按钮让我们稍后登录主屏幕,我们将像在下面的图片中一样进行操作⤵️
让我解释一下,首先忘记手势识别器…
我们正在闭包中创建属性,如果您不熟悉闭包,建议您访问此链接https://docs.swift.org/swift-book/LanguageGuide/Closures.html ,请记住,闭包的好处是swift是为我们管理记忆…
在此闭包中,您可以设置属性的所有属性,例如文本字段左上角的小图标,向我们显示,这是密码字段。
您可以用相同的方式创建电子邮件文本字段,以及所需的内容,知道何时清除让我们更进一步。
进一步割草,我们需要在LoginView中创建一些函数……类似⤵️
这是什么啊
TranslateAutoresizingMask是UIView属性,可以为true或false,如果要使用“自动布局”来动态计算视图的大小和位置,则必须将此属性设置为false。
下面的代码我们可以在视图中添加子视图
我们正在写的所有代码都知道,您可以在许多函数中进行区分,但是我们不会那样做。
如何设置这个约束?
一点也不难⤵️
如该图所示,我们拥有创建视图约束所需的所有锚点…重要的是不要忘记将isActive属性添加为true,因此此约束可以立即处于活动状态……默认为false😒
这个丑陋的白色错误表明密码文本字段的顶部锚点与电子邮件底部锚点之间的常量设置为10,只是不要忘记您是否是第一次进行此操作,这可能会有些混乱……
在我们的视图类中要做的最后一件事是设置初始化程序并调用我们的方法……⤵️
知道容易的部分😀
让我们将视图设置为LoginController…
首先,我们需要创建登录视图的实例,此后,我们需要创建函数以添加视图⤵️
这样就很容易,并且可以通过某些视图扩展,约束扩展,协议等来简化(容易得多)……但这是更高级的方法,我们将在以后的课程中进行介绍……并且不要忘记在setLoginView func中调用viewDidLoad,并在appDelegate文件中设置初始视图控制器