前言:网上一直没有找到用Swift开发IOS的好的教程,所以找了官网的文档翻译一下算了。如有错误欢迎指正。博主首发CSDN,mcf171专栏。
博客链接:mcf171的博客
原文链接:Build a Basic UI
——————————————————————————————
在这个课程中,我们将熟悉Xcode,这个工具是用来写apps的,同时我们也会熟悉在Xcode中的程序架构,通过这次课程,我们将开始制作一个FoodTrackerapp的简单的用户接口(UI)并在模拟器中进行展示。当我们完成程序之后,应该看起来像下图:
学习目标
在本次课程中,你可以了解到:
- 在Xcode中创建项目
- 了解Xcode 程序模板创建的关键文件功能
- 在一个工程中打开和切换文件
- 在模拟器中运行一个app
- 在一个storyboard 中增加、移动UI和调整UI的尺寸。
- 使用属性查看器编辑 storyboard 中的 UI元素属性
- 使用大纲视图浏览和重新排列UI元素
- 使用预览助手编辑器进行一个 storyboard UI的预览
- 使用 Auto Layout 使得UI的布局自适应用户的设备尺寸。
创建一个新的程序
Xcode包括一些内置的开发iOS app通用的模板,比如说游戏、基于tab的导航app、基于table view的app。大多数这些模板都有预配置的接口和源码文件。在本次课程中,我们从最基础的模板开始:Single View Application
创建一个新的程序
1、打开Xcode。- Product Name:
FoodTracker
-
- Organization Identifier:组织的标识。如有没有使用com.example
- Bundle Identifier:这个值基于产品名和组织标识自动生成
- Language:Swift
- Devices:Universal
- Use Core Data:不选
- Include Unit Tests:选
- Include UI Tests:不选
熟悉XCode
Xcode包括我们需要创建一个app的所有东西。它不仅仅组织了创建一个app所需要的所有文件,它同时提供的代码和接口元素的编辑器,允许我们编译和允许我们的app,还包括强有力的调试工具。
我们需要花一些时间来熟悉Xcode 的workspace的主要区域,因为在之后的整个课程中,我们会使用下述图中标注区域的功能。不用太过担心,每一块区域你可以在需要的时候再进行详细的了解。
运行模拟器
因为我们的工程是基于Xcode模板,因此基础的app环境已经自动安装好了。尽管我们还没有写任何代码和配置,我们也可以编译和运行这个Single View Application 模板。
为了编译和运行app,我们使用Xcode包括的模拟器。模拟器让我们我们对app在真实设备上看起来怎么样,运行效果怎么样有一个感性的认知。
模拟器也能模拟大量不同的硬件设备——不同屏幕尺寸的iPad、iPhone等等。所以我们能在所有设备上模拟我们app的效果。在这个课程中,我们使用iPhone 6的选项。
在模拟器上运行app
1、在顶部的Xcode的Scheme 工具栏选择iPhone 6.通过 Scheme菜单我们可以选择模拟的设备。
源码
Single View Application模板创建了一些源码文件。首先让我们看看AppDelegate.swift文件。
查看AppDelegate.swift源文件
AppDelegate 源文件
文件主要有两部分功能:
- 它创建了一个app的进入点(entry point)和一个运行循环(run loop),运行循环用来分发输入事件给app。这个工作被UIApplicationMain 属性完成。
- 它定义了AppDelegate 类,这个是app代理对象的蓝图。app代理对象创建了展现我们app内容的窗口,提供了一个地方来响应app的状态转换。这个AppDelegate类就是我们写我们的用户级代码的地方。
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
func applicationWillResignActive(application: UIApplication)
func applicationDidEnterBackground(application: UIApplication)
func applicationWillEnterForeground(application: UIApplication)
func applicationDidBecomeActive(application: UIApplication)
func applicationWillTerminate(application: UIApplication)
View Controller 源文件
在Single View Application模板中海油另外一个源码文件:ViewController.swift。
这个文件定义了一个UIViewController的用户子类,名字为ViewController。这个类简单的继承了UIViewController定义的所有行为。为了重写或者延生这些行为,我们需要重写在UIViewController定义的方法,比如viewDidLoad()方法和didReceiveMemoryWarning方法。或者实现我们自己的自定义方法。
尽管模板中有didReceivememoryWaring方法,但是我们不需要在这个课程中实现这个方法,所以不用管它或者删掉它。
到目前为止,你的ViewController.swift代码应该看起来是这样的
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
}