天天看点

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample

对于程序的目录结构,完全是按照我个人的习惯所创建,由于结构对编译运行没有任何影响,是完全面向开发者的,所以尽量使用自己习惯的路数来搞比较高效。总体结构如图。

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample

1.本文按照业务功能(功能页面)来划分目录结构,分为appdelegate、resources、datasources、view。

2.appdelegate(应用代理),作为应用的入口,理论上只会有appdelegate这一个文件。

3.resources(资源),负责管理配置文件、storyboard、图片xcassets等资源,以后的coredata、影音等资源也会放入该目录管理。

4.datasources(数据源),负责管理数据实体以及数据层服务,不同业务类型的数据将会以子目录形式分类管理,每个子目录都会存在数据实体模型、对应的操作服务(例如使用sqlite、coredata等组装、操作数据的类)等类。本文仅包含化学元素实体以及对应的服务类(服务类仅仅实现从plist中获取并排列组装数据)

5.view(页面),负责管理功能页面以及页面中的功能,不同业务类型的页面会以子目录形式分类管理,每个子目录会存在view控制器controller、自定义view、数据集等子目录,每个子目录下根据需要包含对应的类。本文中包含tabbarview(页签)、tableview(列表)、detailview(明细页面)三个子类。

storyboard作为官方推荐使用的页面及页面关系设计器,非常方便且直观,可以节省很多代码和控制。在新版本中增加了九宫格视图,可以使开发者很轻松的就能做出兼容各类苹果产品的应用。本文的storyboard设计图如下,与sample没有区别,包含一个tabbarview,一个带有导航navigation的tableview和一个空白view(detailview)。

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample

1.tabbarview

首先,tabbarview的controller需要我们自定义,用来加载我们需要的页签。在tabbarviewcontroller目录下创建pkoelementtabbarviewcontroller: uitabbarcontroller,并应用于tabbarview。

其次,通过control键拖动创建relationship segue过渡(官方翻译为过渡,可以理解为跳转的概念),指向navigationcontroller(若tableview还没有添加导航,则指向tableview),使得页签能够展示该导航及导航的主体。

tabbar的结构及配置如图。

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample

2.tableview

首先,tableview的controller需要我们自定义,用来加载我们需要的列表数据以及开打明细时数据的传递等。在tableviewcontroller目录下创建pkoelementtableviewcontroller: uitableviewcontroller,应用于tableview。

其次,由于我们需要列表的每一列要显示图片+文字的效果,所以还需要自定义一个cellview。在tableview目录系创建pkoelementtableviewcell: uitableviewcell,应用于tableviewcell。在cell下添加一个用来显示文字的label和用来显示图片的空白view。

再次,由于列表的cell显示的图片需要我们自己处理,所以还不要自定义一个用来显示图片的view,在tableview目录下创建pkoelementtableviewcellicon: uiview,应用于用来显示图片的空白view。

然后,将tableview通过editor->embed in->navigation controller引入导航,并为导航添加一个storyboard id:"navfortableview",用于通过storyboard来查找这个navigation。

最后,通过control键拖动创建show segue过渡,指向detailview,使得点击列表cell能够跳转至明细页面,并自动添加了返回功能。

tableview及navigation的结构及配置图如图。

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample

3.detailview

首先,detailview的controller需要我们自定义,用来绘制非常好看的明细页面以展示数据以及添加动画效果等。在detailcontroller目录下创建pkoelementdetailviewcontroller: uiviewcontroller,应用于detailview。

其次,由于我们需要在明细页面以图片的方式展示数据,所以还需要自定义一个view。在detailview目录系创建pkoelementdetailimageview: uiview,这个自定义的view不应用于storyboard中任何一个view,完全由pkoelementdetailviewcontroller中通过代码实现。

Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample
Swift教程_零基础学习Swift完整实例(四)_swift完整实例(搭建程序结构、构建storyboard)四、swift重写Sample

原文地址:http://blog.csdn.net/ooppookid/article/details/40356603

继续阅读