SwiftUI 官方教程(一)
完整中文教程及代码请查看 https://github.com/WillieWangWei/SwiftUI-Tutorials
创建和组合 View
此部分将指引你构建一个发现和分享您喜爱地方的 iOS app ——
Landmarks
。首先我们来构建显示地标详细信息的 view。
Landmarks
使用stacks
将image
、text
等组件进行组合和分层,以此来给 view 布局。如果想给视图添加地图,我们需要引入标准MapKit
组件。在我们调整设计时,Xcode 可以作出实时反馈,以便我们看到这些调整是如何转换为代码的。下载项目文件并按照以下步骤操作。
- 预计完成时间:40 分钟
- 初始项目文件:下载
1. 创建一个新项目并且浏览 Canvas
用 SwiftUI
的 app 模板来创建一个新的 Xcode 项目,并且浏览一下这个 canvas。
1.1 打开 Xcode ,在 Xcode 的启动窗口中单击 Create a new Xcode project
,或选择 File
> New
> Project
。
1.2 选择 iOS
平台, Single View App
模板,然后单击 Next
。
1.3 输入 Landmarks
作为 Product Name
,勾选 Use SwiftUI
复选框,然后单击 Next
。选择一个位置保存此项目。
SwiftUI教程
1.4 在 Project navigator
中,选中 ContentView.swift
。
默认情况下, SwiftUI
view 文件声明了两个结构体。第一个结构体遵循 View
协议,描述 view 的内容和布局。第二个结构体声明该 view 的预览。
ContentView.swift
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello World")
}
}
struct ContentView_Preview: PreviewProvider {
static var previews: some View {
ContentView()
}
}
1.5 在 canvas
中,单击 Resume
来显示预览。
Tip:如果没有
canvas
,选择Editor
>Editor and Canvas
来显示。
1.6 在 body
属性中,将 Hello World
更改为自己的问候语。更改代码时,预览便会实时更新。
ContentView.swift
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Hello SwiftUI!")
}
}
struct ContentView_Preview: PreviewProvider {
static var previews: some View {
ContentView()
}
}
最新文章
- Java _ JDK _ Arrays, LinkedList, ArrayList, Vector 及Stack
- Introdution to 3D Game Programming With DirectX11 第11章 习题解答
- PDF编译出现错误解决办法
- C语言的本质(19)——预处理之一:宏定义
- WPF后台写ControlTemplate总结
- C#中读取xml文件指定节点
- C语言:冒泡排序
- 工厂模式——Head First
- C#微信小程序服务端获取用户解密信息
- spring-boot随笔
- linux下cpu物理个数、多核、超线程判断解析
- P1270 【“访问”美术馆】
- Spring-boot 1.5.2 下隐藏Banner
- vlc player验证交换机igmp
- dokcer 的export 、improt和save 、load
- 详解shuffle过程(转载)
- Mahout源码目录说明&;&;算法集
- 从0开始 Java学习 packet用法
- Struts05---动态查询
- 回溯法——n后问题
热门文章
- WEB笔记-5、字体和文本
- I2C controller core之Bit controller(05)
- 【sqli-labs】 less20 POST - Cookie injections - Uagent field - Error based (POST型基于错误的cookie头部注入)
- python 处理中文 读取数据库输出全是问号
- softmax回归---sigmoid(1)
- IDEA全局查找快捷键
- HashMap源码分析笔记(一)
- 无法启用internet连接共享,为LAN连接配置的IP地址需要使用自动IP寻址
- vue+ElementUI 分页
- luogu P4725 多项式对数函数 (模板题、FFT、多项式求逆、求导和积分)