SwiftUI 教程

SwiftUI - 主页 SwiftUI - 概览 SwiftUI 与 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 - BLur 效果 SwiftUI - 阴影效果 SwiftUI - 悬停效果

SwiftUI - 动画

SwiftUI - 动画 SwiftUI - 创建动画 SwiftUI - 创建显式动画 SwiftUI - 多个动画 SwiftUI - 过渡 SwiftUI - 不对称过渡 SwiftUI - 自定义过渡

SwiftUI - 图像

SwiftUI - 图像 SwiftUI - 图像作为背景 SwiftUI - 旋转图像 SwiftUI - 媒体

SwiftUI - 视图布局

SwiftUI - 视图布局 SwiftUI - 视图大小 SwiftUI - 视图间距 SwiftUI - 视图填充

SwiftUI - UI 控件

SwiftUI - UI 控件 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 - 跨平台 UI SwiftUI - 数据 SwiftUI - 可访问性

SwiftUI - 框架集成

SwiftUI - 框架集成 SwiftUI - 与 UIKit 交互 SwiftUI - 创建 macOS 应用

SwiftUI 有用资源

SwiftUI - 有用资源 SwiftUI - 讨论


SwiftUI - 自定义图像视图

图像视图在屏幕上显示单个或多个图像。它是 SwiftUI 最重要的视图。使用图像视图,我们可以轻松显示来自资产目录的图像。它可以轻松处理各种图像格式,如 PNG、JPEG、PDF 等。它还可以有效地与 SFSymbols 配合使用。

图像视图可以轻松管理和操作图像以创建更具创意的布局。它还支持各种修改器来拉伸、缩放、调整大小或将图像固定到特定位置。图像视图只能显示图像,不具有交互性。

在 SwiftUI 中使用图像视图显示图像

使用图像视图显示图像是一种非常简单的方法,我们需要按照以下步骤在屏幕上显示图像−

步骤 1:准备图像

要在图像视图中显示图像,首先我们需要通过拖放图像文件将图像添加到 Assets.xcassets 文件夹中。

步骤 2:添加图像视图

要在视图中添加图像,请打开 ContentView.swift 文件,然后在 body 属性中使用图像视图。由于我们已经将图像放在资产中,因此我们将图像的引用传递到图像视图中。这降低了由于图像名称不正确而发生运行时错误的风险。如果在资产目录中进行了任何更改,那么它将在代码中通知图像用作参考的位置,以便您可以在编译代码之前对其进行更改。

struct ContentView: View {
   var body: some View {
      Image("imageName")
   }
}

步骤 3:运行应用程序

在模拟器或设备中运行应用程序以查看图像。

示例

以下 SwiftUI 程序用于创建图像视图。

import SwiftUI

struct ContentView: View {
   var body: some View {
      Image(.wallpaper)
   }
}

#Preview {
   ContentView()
}

输出

自定义图像视图

在 SwiftUI 中自定义图像视图

通过自定义图像视图,我们可以借助 SwiftUI 提供的各种修饰符根据设计要求更改图像的外观和行为。使用这些修饰符,我们可以更改图像视图的形状、大小、颜色和其他视觉属性。 SwiftUI 提供各种内置修饰符来自定义 Image 视图中的图像,一些常用的修饰符如下 −

修饰符 说明
frame(width:height:alignment:) 用于明确设置图像视图的宽度和高度。
resizable() 用于调整图像大小。
aspectRation(contentMode:) 用于在调整大小时管理图像的纵横比它。
clipShape(RoundedRectangle(cornerRadius:)) 用于将图像视图的角弄圆。此修饰符还用于更改图像的形状。
padding() 用于在图像视图周围插入空间
Image(systemName:"SymbolName") 用于显示 SF Symbol。
shadow(radius) 用于在图像视图上应用阴影效果。
overlay() 用于在图像顶部叠加另一个视图。
opacity() 用于设置图像视图的不透明度。

示例

以下 SwiftUI 程序用于自定义图像视图。

import SwiftUI

struct ContentView: View {
   var body: some View {
      VStack{
         Image(.wallpaper)
            .resizable()
            .frame(width: 300, height: 200)
         Image(.wallpaper)
            .resizable()
            .frame(width: 300, height: 200)
            .clipShape(Capsule())
         Image(.wallpaper)
            .resizable()
            .frame(width: 300, height: 200)
            .shadow(radius: 30)
            .opacity(0.7)
         Image(systemName: "star")
            .frame(width: 300, height: 200)
            .font(.largeTitle)           
      }
   }
}

#Preview {
   ContentView()
}

输出

自定义图像视图