一起养成写作习气!这是我参加「日新方案 4 月更文挑战」的第2天,点击检查活动概况。
前言:从小到大,如同很多作业都是三分钟热度,作业开端很简略,但坚持下去很难。作业也罢,学习也罢,有时候在想,假如自己一直努力坚持一件作业,是不是最终就能到达自己想要的成果?
今天职言:商业环境的改变是迅速且规律莫测的,你要做的是,一旦决议了就立即去做。
在本章中,你将学会怎么加载显现本地图片、体系图标、并对图片进行简略的处理等。
首先,咱们先创立一个新项目,命名为SwiftUIImage。
在Assets.xcassets文件中,能够导入本地图片素材,Assets不只能够导入图片,还能够设置颜色,这块咱们以后会用到。
点击Assets,在底部点击“+”按钮,挑选Image Set(或许鼠标右键)。
给图片重命名,便于之后依照图片姓名引证,比方:示例图片。
主张运用简略的英文为图片命名,中文命名有时候或许会出现问题。
咱们能够看到需要导入3个尺度的图片,这是为了更好在不同类型的设备上展示。
咱们翻开本地的图片文件夹,将图片文件拖入到图片区。
这样,咱们就完成图片的导入了。
咱们来看下怎么加载显现刚导入的图片。
回到ContentView.swift文件中,输入以下代码。
Image("示例图片")
该代码初始化了一张图片,咱们在模拟器上能够看到显现了图片,这是创立图片视图的根本语法。
咱们看到图片会很大,只能看到一部分。
这时候假如咱们想要看到完好的图片,咱们需要对图片进行缩放。
//缩放图片
Image("示例图片”)
.resizable()
科普一个知识点,咱们能够看到模拟器中预留出了顶栏和底栏两块区域,这是由于由于有“安全区”的存在。
安全区是扫除顶部栏(即状态栏)和底部栏的视图区域,它界说了能够安全地放置UI组件的视图区域。有了安全区,能够防备在编程时有些UI控件不知道去哪里的危险。
假如你想疏忽安全区,把视图撑开整个屏幕,能够经过设置.edgesIgnoringSafeArea修饰符来疏忽安全区域。
//疏忽安全区
Image("示例图片")
.resizable()
.edgesIgnoringSafeArea(.all)
从模拟器中咱们能够看到,示例图片已经有点变形,这是由于.resizable()仅仅简略的拉伸缩放,而没有坚持原有的份额,假如咱们想等份额缩放,那么咱们需要运用.scaledToFit()修饰,这样就能够坚持原有图像的宽高比。
//等份额缩放
Image("示例图片")
.resizable()
.scaledToFit()
别的,运用.aspectRatio(contentMode: .fill)也能够到达同样的效果,都试试吧。
假如咱们想调整图片的巨细,便利咱们和别的UI控件形成美感,那么咱们也能够调整下图片的显现尺度。
//设置巨细
Image("示例图片")
.resizable()
.aspectRatio(contentMode: .fit)
.frame(width: 350)
在App开发中,假如咱们想要用一张图片作为头像,但咱们的图片有或许不是圆形的。
这时候,咱们能够将剩余的部分裁剪掉,留下中间的部分。
//裁剪图片
Image("示例图片")
.resizable()
.aspectRatio(contentMode: .fit)
.frame(width: 350)
.clipShape(Circle())
假如图片色彩太深了,与App全体色彩相冲突。
咱们能够测验降低下图片的透明度,使它和App更调和。
//透明度设置,示例:0.8
Image("示例图片")
.resizable()
.aspectRatio(contentMode: .fit)
.frame(width: 350)
.clipShape(Circle())
.opacity(0.8)
有时候,图片仅仅作为布景存在,在图片上还会有文字或许图标的情况,示例:壁纸类软件。
这时候,咱们需要在图片视图上再添加添加一个视图,“掩盖”在上面,咱们能够用.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)
)
再引进一个知识点,Image除了能够展示本地导入的图片、网络图片(往后章节会讲到,埋个坑),还能够显现体系图标。
Apple官方提供了超过3000个新符号供开发者运用,开发者简直无需自己搜集常用图标。
下载安装运用后,咱们能够快速了解图标符号的名称,从而快速运用它。
不必下载也能运用图标库,仅仅这个运用能帮咱们快速找到图标的姓名。
运用方法很简略,只需要在Image里添加systemName就能够了。
//运用体系图标符号
Image(systemName:"square.and.arrow.up”)
.font(.system(size: 80))
那么,测验下用前几章所学到的知识,给体系图标设置不同颜色、巨细、阴影吧!
第二天了,其实这篇文章是前一天写的,保存在草稿箱中,便是担心自己“断更”…….