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()
}

输出

自定义图像视图