前提条件
- 应用大致有哪些个页面
- 数据来源于何处
随后的步骤,设计页面
1、使用xcode建立一个工程,如图

2、语言记得选择swift

3、相关设置

此处建议新手们把横屏left right反钩掉
4、storyboard主界面配置

建议新手也把use size classes反钩掉
5、开始设计页面(推荐使用 storyboard + autolayout的方式)

在设计页面之前,我们要先熟悉下storyboard上的一些比较重要的块代表着什么,其实我都已经给标记了出来。
- storyboard给我们默认配置了一个viewcontroller,然后这个“视图”或者说页面实际上是和viewcontroller.swift文件中的那个类关联着的。
- 之后,我们可以通过底部右下的小红框点击之后出现的组件栏托类似于uilable,uitextview之类的一些组件到storyboard上的视图中去。
- 在之后,我们对页面上的组件和代码做一下关联;如图

- 一个app很可能有多个页面,有几个页面,你添加几个viewcontroller组件到storyboard就可以了,然后在里面放组件,问题是页面之间怎么关联呢,使用segue,如图,右键点加号,拖动到右面页面,选择push就会自动为你配置一个segue

建立数据模型
- 比如第一个页面是一个唐诗详情页,那么,抽象出来的话,应该有一个叫Tangshi的model,所以,自然而然的你就要新建一个tangshi .swift的文件,里面去定义这么一个model

因为我们的model和ui是无关的,所以,我们import Foundation就OK了
页面因为有了数据模型的加入,才有了真是的内容

虽然,我们已经给页面派发了数据模型,但是,他现在还没有任何数据,只是一个空模型,因此,我们应该给他填充内容,所以,我们需要一个DataManger,专门的为我们的页面中的数据model提供数据的类似于helper之类的东东了。

datamanger为我们的model填充了数据,那么页面里面的model就应该有数据了,所以,接下面的事情就是吧数据绑定到组件上了。

总结及问题
- 1本文是写个一个准备进入ios开发的新手的一篇教学课程,讲述了开发一个iosapp所必须的一些步骤,老鸟还是算了吧。
- 2、那么问题来了,datamanger里面的方法是同步,这里我给你留了一到作业题,如何把他变成异步的,提示(delegate模式,这个在app开发过程中非常重要)
- 3、那么问题还没有玩,第二个,加入不用storyboard,你如何做出这样同样的一个app来呢?换句话说,所有的ui都需要你自己手写,你打算怎么办?
- 4、autolayout真的有那么靠谱吗?那些情况下不适合使用autolayout,那些情况下非常适合使用autolayout呢?
- 5、什么是size classes ?使用他有什么方便之处,请自己google,如果你了解,可以在评论中写上答案。
- 6、不用segue,页面之间怎么用代码跳转呢?
- 7、页面之间需要传递参数了,如何传递参数到下一个页面?回传参数会上一个页面呢?(提示NSNOTI....)
- 8、info.plist里面都有些什么东西,能添加一些什么东西,每个配置你了解他的用途吗?
- 9、头疼的问题,程序的入口在哪里呢?你能找到吗?
- 10、launchScreen.storyboard是干什么的,没有他会出现什么问题?
- 11、assets.xcassets是干什么的?@2x,@3x分别用于什么类型的屏?
- 12、页面和类是如何绑定的?为什么要绑定呢?
针对以上问题,大家可以在评论中写上自己的答案,我一般会回复。
网友评论
(来自一个纯小白刚入门的回答。。。)
还有,请问用segue怎么关联呢?我没看到有加号诶。。。