- SwiftUI 教程
- SwiftUI - 首页
- SwiftUI - 概览
- SwiftUI vs UIkit
- SwiftUI 环境
- SwiftUI - 环境设置
- SwiftUI - 基本组件
- SwiftUI - 构建第一个应用程序
- SwiftUI 视图
- SwiftUI - 视图
- SwiftUI - 自定义文本视图
- SwiftUI - 自定义图像视图
- SwiftUI - 堆栈
- SwiftUI 绘制形状
- SwiftUI - 形状
- SwiftUI - 绘制线条
- SwiftUI - 绘制矩形
- SwiftUI - 绘制圆角矩形
- SwiftUI - 绘制三角形
- SwiftUI - 绘制圆形
- SwiftUI - 绘制星形
- SwiftUI - 绘制多边形
- SwiftUI - 绘制饼图
- SwiftUI - 使用内置形状
- SwiftUI - 文本
- SwiftUI - 文本视图
- SwiftUI - 文本输入和输出
- SwiftUI - 颜色
- SwiftUI - 颜色
- SwiftUI - 颜色选择器
- SwiftUI - 渐变
- SwiftUI - 调整颜色
- SwiftUI - 特效
- SwiftUI - 特效
- SwiftUI - 混合特效
- SwiftUI - 模糊特效
- SwiftUI - 阴影特效
- SwiftUI - 悬停特效
- SwiftUI - 动画
- SwiftUI - 动画
- SwiftUI - 创建动画
- SwiftUI - 创建显式动画
- SwiftUI - 多个动画
- SwiftUI - 转场
- SwiftUI - 非对称转场
- SwiftUI - 自定义转场
- SwiftUI - 图片
- SwiftUI - 图像
- SwiftUI - 图片作为背景
- SwiftUI - 旋转图像
- SwiftUI - 媒体
- SwiftUI - 视图布局
- SwiftUI - 视图布局
- SwiftUI - 视图大小
- SwiftUI - 视图间距
- SwiftUI - 视图填充
- SwiftUI - 列表和表格
- SwiftUI - 列表
- SwiftUI - 静态列表
- SwiftUI - 动态列表
- SwiftUI - 自定义列表
- SwiftUI - 表格
- SwiftUI - 表单
- SwiftUI - 表单
- SwiftUI - 将表单分成多个部分
- SwiftUI 有用资源
- SwiftUI - 有用资源
- SwiftUI - 讨论
SwiftUI - 使用内置形状
SwiftUI 支持一些内置形状,用于开发自定义设计和用户界面组件。这些形状易于使用,并且可以以各种样式、颜色、填充、变换等进行自定义。它们通常用于裁剪内容、创建自定义视图、组件等。SwiftUI 支持以下内置形状:
- 圆形
- 椭圆形
- 矩形
- 圆角矩形
- 胶囊形
现在让我们详细讨论每个形状,然后在本章的最后,我们将使用这些形状创建一个简单的单元格。
圆形
我们可以使用 Circle() 创建一个圆形。它在视图框架的中心创建一个圆形。圆形的半径是框架长度的一半。默认情况下,圆形是实心的黑色,但我们可以使用各种修饰符(如填充、描边、框架等)对其进行修改。
语法
以下是语法:
Circle()
示例
import SwiftUI struct ContentView: View { var body: some View { // Drawing circle Circle().fill(Color.brown).frame(width: 50, height: 50) } } #Preview { ContentView() }
输出
椭圆形
椭圆形是二维的卵形,或者可以说它看起来像一个拉长的圆形。椭圆形的宽度和高度不同。在 SwiftUI 中,我们可以使用 Ellipse() 创建椭圆形。它创建一个位于视图框架内的椭圆形。我们可以使用修饰符根据需要修改椭圆形。
语法
以下是语法:
Ellipse()
示例
import SwiftUI struct ContentView: View { var body: some View { // Drawing ellipse Ellipse().stroke(Color.blue, lineWidth: 8).frame(width: 50, height: 100) } } #Preview { ContentView() }
输出
矩形
矩形是最常用的形状。因此,我们可以使用 Rectangle() 轻松创建矩形。它将矩形对齐在视图框架内。它支持各种属性,允许它具有描边或用作蒙版。
语法
以下是语法:
Rectangle()
示例
import SwiftUI struct ContentView: View { var body: some View { // Drawing rectangle Rectangle().fill(Color.blue).frame(width: 100, height: 200) } } #Preview { ContentView() }
输出
圆角矩形
SwiftUI 还提供内置的 RoundedRectangle() 来创建圆角矩形形状。圆角矩形是一个非常有用的形状,它带有圆角 (cornerRadius) 和样式属性。它用于创建按钮。
语法
以下是语法:
RoundedRectangle(cornerRadius:CGSize, style: RoundedCornerStyle)
它接受以下参数:
- cornerSize: 包含角的半径。
- style: 表示圆角的样式。
示例
import SwiftUI struct ContentView: View { var body: some View { // Drawing rounded rectangle RoundedRectangle(cornerRadius: 20, style: .circular) .fill(Color.pink) .frame(width: 300, height: 200) } } #Preview { ContentView() }
输出
胶囊形
SwiftUI 还提供了一个名为 capsule() 的特殊形状。它是一种药丸状或细长的椭圆形,两端圆润。它通常用于创建按钮、徽章和其他 UI 组件。
语法
以下是语法:
Capsule()
示例
import SwiftUI struct ContentView: View { var body: some View { // Drawing capsule Capsule().fill(Color.pink).frame(width: 300, height: 100) } } #Preview { ContentView() }
输出
现在,我们将创建一个布局来了解这些形状的实际用途。在这里,我们将使用形状(例如 Rectangle() 用于背景,RoundedRectangle() 用于框,Circle() 用于徽标以及 Capsule() 用于按钮)创建一个登录页面。
示例
import SwiftUI struct ContentView: View { var body: some View { ZStack { Rectangle() .foregroundColor(.brown) .ignoresSafeArea() HStack { Circle() .fill(Color.mint) .frame(width: 70, height: 70) .overlay(Text("T").font( /*@START_MENU_TOKEN@*/.title /*@END_MENU_TOKEN@*/)) VStack { Text("TutorialsPoint").font(.title) HStack { Capsule() .fill(Color.gray) .frame(height: 30) .overlay(Text("Login").font(.headline)) }.frame(width: 120) } }.padding() .background(Color.white) .clipShape(RoundedRectangle(cornerRadius: 50)) } } } #Preview { ContentView() }