一起养成写作习气!这是我参加「日新方案 4 月更文挑战」的第2天,点击检查活动概况。

前言:从小到大,如同很多作业都是三分钟热度,作业开端很简略,但坚持下去很难。作业也罢,学习也罢,有时候在想,假如自己一直努力坚持一件作业,是不是最终就能到达自己想要的成果?

今天职言:商业环境的改变是迅速且规律莫测的,你要做的是,一旦决议了就立即去做。

在本章中,你将学会怎么加载显现本地图片、体系图标、并对图片进行简略的处理等。

首先,咱们先创立一个新项目,命名为SwiftUIImage。

SwiftUI极简教程02:Image图片的使用

在Assets.xcassets文件中,能够导入本地图片素材,Assets不只能够导入图片,还能够设置颜色,这块咱们以后会用到。

点击Assets,在底部点击“+”按钮,挑选Image Set(或许鼠标右键)。

SwiftUI极简教程02:Image图片的使用

给图片重命名,便于之后依照图片姓名引证,比方:示例图片。

主张运用简略的英文为图片命名,中文命名有时候或许会出现问题。

咱们能够看到需要导入3个尺度的图片,这是为了更好在不同类型的设备上展示。

SwiftUI极简教程02:Image图片的使用

咱们翻开本地的图片文件夹,将图片文件拖入到图片区。

这样,咱们就完成图片的导入了。

SwiftUI极简教程02:Image图片的使用

咱们来看下怎么加载显现刚导入的图片。

回到ContentView.swift文件中,输入以下代码。

Image("示例图片")

该代码初始化了一张图片,咱们在模拟器上能够看到显现了图片,这是创立图片视图的根本语法。

SwiftUI极简教程02:Image图片的使用

咱们看到图片会很大,只能看到一部分。

这时候假如咱们想要看到完好的图片,咱们需要对图片进行缩放。

//缩放图片
Image("示例图片”)
 .resizable()

SwiftUI极简教程02:Image图片的使用

科普一个知识点,咱们能够看到模拟器中预留出了顶栏和底栏两块区域,这是由于由于有“安全区”的存在。

安全区是扫除顶部栏(即状态栏)和底部栏的视图区域,它界说了能够安全地放置UI组件的视图区域。有了安全区,能够防备在编程时有些UI控件不知道去哪里的危险。

假如你想疏忽安全区,把视图撑开整个屏幕,能够经过设置.edgesIgnoringSafeArea修饰符来疏忽安全区域。

//疏忽安全区
Image("示例图片")
 .resizable()
 .edgesIgnoringSafeArea(.all)

SwiftUI极简教程02:Image图片的使用

从模拟器中咱们能够看到,示例图片已经有点变形,这是由于.resizable()仅仅简略的拉伸缩放,而没有坚持原有的份额,假如咱们想等份额缩放,那么咱们需要运用.scaledToFit()修饰,这样就能够坚持原有图像的宽高比。

//等份额缩放
Image("示例图片")
 .resizable()
 .scaledToFit()

SwiftUI极简教程02:Image图片的使用

别的,运用.aspectRatio(contentMode: .fill)也能够到达同样的效果,都试试吧。

假如咱们想调整图片的巨细,便利咱们和别的UI控件形成美感,那么咱们也能够调整下图片的显现尺度。

//设置巨细
Image("示例图片")
 .resizable()
 .aspectRatio(contentMode: .fit)
 .frame(width: 350)

SwiftUI极简教程02:Image图片的使用

在App开发中,假如咱们想要用一张图片作为头像,但咱们的图片有或许不是圆形的。

这时候,咱们能够将剩余的部分裁剪掉,留下中间的部分。

//裁剪图片
Image("示例图片")
 .resizable()
 .aspectRatio(contentMode: .fit)
 .frame(width: 350)
 .clipShape(Circle())

SwiftUI极简教程02:Image图片的使用

假如图片色彩太深了,与App全体色彩相冲突。

咱们能够测验降低下图片的透明度,使它和App更调和。

//透明度设置,示例:0.8
Image("示例图片")
 .resizable()
 .aspectRatio(contentMode: .fit)
 .frame(width: 350)
 .clipShape(Circle())
 .opacity(0.8)

SwiftUI极简教程02:Image图片的使用

有时候,图片仅仅作为布景存在,在图片上还会有文字或许图标的情况,示例:壁纸类软件。

这时候,咱们需要在图片视图上再添加添加一个视图,“掩盖”在上面,咱们能够用.overlay()修饰符。

//掩盖一层视图,示例:文字掩盖
Image("示例图片")
 .resizable()
 .aspectRatio(contentMode: .fit)
 .frame(width: 350)
 .clipShape(Circle())
 .opacity(0.8)
 .overlay(
  Text("修改")
   .fontWeight(.bold)
   .font(.system(size: 24))
   .foregroundColor(Color.white)
)

SwiftUI极简教程02:Image图片的使用

再引进一个知识点,Image除了能够展示本地导入的图片、网络图片(往后章节会讲到,埋个坑),还能够显现体系图标。

Apple官方提供了超过3000个新符号供开发者运用,开发者简直无需自己搜集常用图标。

SwiftUI极简教程02:Image图片的使用

下载安装运用后,咱们能够快速了解图标符号的名称,从而快速运用它。

不必下载也能运用图标库,仅仅这个运用能帮咱们快速找到图标的姓名。

运用方法很简略,只需要在Image里添加systemName就能够了。

//运用体系图标符号
Image(systemName:"square.and.arrow.up”)
 .font(.system(size: 80))

SwiftUI极简教程02:Image图片的使用

那么,测验下用前几章所学到的知识,给体系图标设置不同颜色、巨细、阴影吧!

第二天了,其实这篇文章是前一天写的,保存在草稿箱中,便是担心自己“断更”…….