【大树云微课堂】iOS 简明开发教程之一: 快速搭建

关键字 :大树云BTCiOS
很多?在学习?门语?之前都会先学习基础语言,比如 Objective-C 或 Swift,但是这样的话,学习过程就?较枯燥,也可能被因为熬不住寂寞而被淘汰。因此,我们学习 iOS 之前,需要有?个?体的了解,?对 iOS 开发产生兴趣...

开发?具

● 开发系统:macOS 系统

必须是在苹果的 macOS 系统上开发。如果有条件,就买?台苹果电脑来做开发。

不行的话,就在原电脑上安装?个黑苹果的系统,?苹果系统怎么安装,这个… ?行百度吧,有?定难度。

● 开发?具:Xcode

这个在 App Store 上搜索 Xcode 安装就行了。

Xcode 使?简要说明

创建项?






到此项?创建完成

设置配置?件

如图,点击左上角项目名 -> TARGETS -> BTC -> General

Display Name:App 显示名,修改为 大树云 BTC

Deployment Target:开发使用的 SDK 版本,这里选 9.0,这样说明运行的 iOS 系统必须要在 9.0 以上



App 图集 Assets.xcassets

选中 Assets.xcassets -> Applcon 放?相对应的 App 图标,如图



这样,App 显示图标就 OK 了。

启动?面 LaunchScreen.storyboard

在这里,我们先看一下 XCode 的窗口,如下图



Storyboard 是 iOS 的视图 View ?文件, LaunchScreen.storyboard 是系统默认的启动?面。

我们从控件窗?拖动?个 Label 进?启动 View, 并选中 Label 在属性窗口设置为 大树云 BTC。



控件 Lable 在 View 上的位置布局

控件布局?式有好几种,这里用常用的约束布局。

如图:选中下面图标,我们让它水平置中



如图,点击下面图标,我们让它离视图 View 的距离为 100.



运?在虚拟机

?此,我们基本配置完成,可以点击菜单 Product 上的 Run 运行在虚拟机上测试。

当然也可以点快捷图标,如下图运行。在虚拟机上可以看到 App 名字改成 大树云 BTC ,图标也换了。

如果没有设置图标,就如 ATU 智能家居 App 一样。



MVC 简介

在正式码代码之前,我们必须要了解什么是 MVC,它是 iOS 开发的基础设计模式,当然还有 MVVM 等,这里不聊那些先。



让我们看看苹果官方 MVC 结构图,从图中可以看出三者的关系。

Model :
   
    模型对象封装特定于应?程序的数据,并定义操作和处理该数据的逻辑和计算。例如,模型对象可能表示游戏中的?色或地址簿中的联系人。

    模型对象可以与其他模型对象具有一对多关系,因此有时应?程序的模型层有效地是一个或多个对象图。

    作为应用程序持久状态的一部分的大部分数据(无论持久状态是存储在文件还是数据库中)都应该在数据加载到应用程序后驻留在模型对象中。

    因为模型对象代表与特定问题域相关的知识和专业知识,所以它们可以在类似的问题域中重用。

    理想情况下,模型对象应该没有与呈现其数据的视图对象的显式连接,并允许用户编辑该数据 - 它不应该关注用户界面和表示问题。

View :

    视图对象是用户可以看到的应用程序中的对象。视图对象知道如何绘制自身并可以响应用户操作。

    视图对象的主要?途是显示应用程序模型对象中的数据并启用对该数据的编辑。尽管如此,视图对象通常与 MVC 应用程序中的模型对象分离。

    因为您通常会重用和重新配置它们,所以视图对象可以提供应用程 UIKit 和 AppKit 框架都提供了视图类的集合,Interface Builder 在其库中提供了许多视图对象。

Controller :

    控制?对象充当应?程序的一个或多个视图对象与其一个或多个模型对象之间的中介。因此,控制?对象是视图对象通过其获知模型对象的变化的管道,反之亦然。

    控制器对象还可以为应用程序执行设置和协调任务,并管理其他对象的?命周期。

以上是苹果官方解释,原文地址:https://developer.apple.com/library/archive/documentation/General/Conceptual/DevPedia-CocoaCore/MVC.html


我们总结一下:
   
    Model       : 负责业务逻辑、来? UI 数据处理、本地数据、?络接收数据。
   
    View          : 负责实现屏幕展示的 UI、响应用户事件。

    Controller : 负责 View 与 Model 间的消息的转发传递。

每个角?都可以有多个类,只是从职责上划分后某个 Class 必须是 MVC 中的一员。在这 MVC 之外,我们还有?些?具类,公共类等,不必严格的划分 MVC 就是了。

以上现在看不明?没什么,只要有个基本概念就行了,以后随着学习的深?会慢慢理解。

搭建主体框架

我们使?常用的 UITabBarController + UINavigationController 主体结构。

1. 选中左边目录上的 Main.storyboard, 然后选中 ViewController 删除。



2. 从控制菜单拖出一个 TabBarController 出来。



3. 之后,我们修改二个 TabBarItem 的 title 和 image 分别为?页和我。图片拉到 Assets.xcassets中,就可以下拉显示。



4. 对 UIViewController 加载 UINavigationController。最后运行测试。





MVC 分?录结构

如图,新建目录 : Model View Controller Tool Commom Other



创建二个 UIViewController : HomeVC MineVC

New File.. 创建 iOS -> Cocoa Touch Class -> Next

分别创建 HomeVC MineVC 父类 UIViewController -> Next

放在 Controller ?录下,Targets -> BTC 记得打勾 -> Create



最后的?录结构



最后?步,邦定 View Controller,对 HomeVC 和 MineVC 作视图邦定。

选中之前的 Main.storyboard,对 ViewController 进行邦定。



主? View 的 UI 设计

在控件窗?拖入 UITableView 到主窗?



对 tableView 进行约束布局



视图邦定控制?上属性,这里我们可以让 MVC 中的 V 与 C 进?邦定,按住 control 拖动到控制?就可以了。命名为 tableView



到此,我们 view 基本搞定。

HomeVC 控制?编码



HomeModel 模型编码



最终成果是这样的



这篇文章能让我们对 iOS 开发有一个快速清晰的认识。

在后面的文章,我会对一些技术点进行详解。

更多资讯,请关注大树云系列公众号:

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★博文作者未开放评论功能