SwiftUI中三大渐变色的介绍

news2024/11/19 15:18:30

在SwiftUI中,渐变色是一种常用的视觉效果,用于创建平滑过渡的颜色变化。通过使用渐变色,我们可以实现丰富多彩的界面设计,增强用户体验。

1. 渐变色的种类和用途

种类:

  1. 线性渐变(Linear Gradient):沿着一条直线方向渐变。
  2. 径向渐变(Radial Gradient):从一个中心点向外辐射渐变。
  3. 角度渐变(Angular Gradient):围绕中心点按照一定角度方向渐变。

用途:
渐变色常用于按钮、背景、文本等元素的样式设计,使界面更加生动和吸引人。

2. 线性渐变(Linear Gradient)

概念:
线性渐变是沿着一条直线方向渐变的效果,由起始颜色和结束颜色组成。

基本用法:

LinearGradient(gradient: Gradient(colors: [Color.red, Color.blue]), startPoint: .top, endPoint: .bottom)

参数解释:
gradient:指定渐变的颜色数组。
startPoint:指定渐变的起始点,取值类型为UnitPoint
endPoint:指定渐变的结束点,取值类型为UnitPoint

代码举例:

var body: some View {
    VStack(spacing: 30, content: {
      RoundedRectangle(cornerRadius: 25)
        .fill(
          LinearGradient(gradient: Gradient(colors: [Color.red, Color.blue]), startPoint: .top, endPoint: .bottom)
        )
        .frame(width: 300, height: 200)
      RoundedRectangle(cornerRadius: 25)
        .fill(
          LinearGradient(gradient: Gradient(colors: [Color.cyan.opacity(0.4), Color.cyan]), startPoint: .topLeading, endPoint: .bottomTrailing)
        )
        .frame(width: 300, height: 200)
    })
  }

在这里插入图片描述

3. 径向渐变(Radial Gradient)

概念:
径向渐变是从一个中心点向外辐射渐变的效果,由中心颜色和边缘颜色组成。

基本用法:

RadialGradient(gradient: Gradient(colors: [Color.yellow, Color.orange]), center: .center, startRadius: 0, endRadius: 100)

参数解释:
gradient:指定渐变的颜色数组。
center:指定渐变的中心点,取值类型为UnitPoint
startRadius:指定渐变的起始半径。
endRadius:指定渐变的结束半径。

代码举例:

var body: some View {
    VStack(spacing: 30, content: {
      Circle()
        .fill(
          RadialGradient(gradient: Gradient(colors: [Color.blue.opacity(0.3), Color.blue]), center: .center, startRadius: 0, endRadius: 150)
        )
        .frame(width: 300, height: 300)
      Rectangle()
        .fill(
          RadialGradient(gradient: Gradient(colors: [Color.cyan.opacity(0.3), Color.blue]), center: .topLeading, startRadius: 0, endRadius: 300)
        )
        .frame(width: 300, height: 200)
    }

在这里插入图片描述

4. 角度渐变(Angular Gradient)

概念:
角度渐变是围绕中心点按照一定角度方向渐变的效果,由多个颜色组成。
苹果官方给出的解释为(如翻译不准,请见谅):

角度渐变也被称为“锥形”渐变。这种渐变根据角度的变化应用颜色函数,相对于一个中心点和定义的起始和结束角度。如果 endAngle - startAngle > 2π,则渐变只绘制最后一个完整的圈。如果 endAngle - startAngle < 2π,则渐变会用渐变位置为零和一的颜色填充缺失的区域,在缺失区域的中间过渡两种颜色。渐变将单位空间中心点映射到填充有渐变的每个形状的边界矩形中。

基本用法:

AngularGradient(gradient: Gradient(colors: [Color.purple, Color.orange, Color.green]), center: .center, startAngle: .degrees(0), endAngle: .degrees(360))

参数解释:
gradient:指定渐变的颜色数组。
center:指定渐变的中心点,取值类型为UnitPoint
startAngle:指定渐变的起始角度。
endAngle:指定渐变的结束角度。

代码举例:

var body: some View {
    VStack(spacing: 30, content: {
      Circle()
        .fill(
          AngularGradient(gradient: Gradient(colors: [Color.purple.opacity(0.3), Color.purple]), center: .center, startAngle: .degrees(0), endAngle: .degrees(180))
        )
        .frame(width: 300, height: 300)
      Capsule()
        .fill(
          AngularGradient(gradient: Gradient(colors: [Color.purple, Color.orange, Color.green]), center: .center, startAngle: .degrees(0), endAngle: .degrees(360))
        )
        .frame(width: 300, height: 200)
    })
  }

在这里插入图片描述

通过以上介绍,您现在了解了SwiftUI中三种常用的渐变色类型:线性渐变、径向渐变和角度渐变。希望这些信息能帮助您更好地运用渐变色来设计各种吸引人的界面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1675482.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

huggingface 笔记:pipeline

1 介绍 pipeline() 是使用预训练模型进行推理的最简单和最快速的方式。可以针对不同模态的许多任务直接使用 pipeline() 2 举例&#xff1a;情感分析 2.1 创建pipeline实例 from transformers import pipelineclassifier pipeline("sentiment-analysis") #首先创…

练习题(2024/5/13)

1移除链表元素 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,6,3,4,5,6], val 6 输出&#xff1a;[1,2,3,4,5]示例 2&#xff1a; …

Zoho CRM企业成长的智能引擎,智能化销售自动化

数字化时代&#xff0c;客户体验已成为企业竞争的核心要素。卓豪Zoho CRM&#xff0c;作为全球领先的SaaS云端客户关系管理平台&#xff0c;正引领着一场企业运营模式的变革&#xff0c;助力超过25万家企业跨越180多个国家&#xff0c;实现客户互动与业务增长的无缝对接。让我们…

Taylor Francis科技期刊数据库文献去哪里获取

一、Taylor & Francis科技期刊数据库简介&#xff1a; Taylor & Francis 科技期刊数据库&#xff08;T&F ST Library&#xff09;提供超过520种经专家评审的高质量科学与技术类期刊, 其中超过85%的期刊被Web of Science收录&#xff0c;内容最早至1997年。该科技期…

Windows快捷命令

Windows 操作系统提供了大量的快捷命令&#xff0c;用于快速访问系统设置和管理工具。这些命令在各个版本的 Windows 中基本都适用&#xff0c;可以帮助用户快速进入各类管理工具&#xff0c;方便系统的配置和管理。如果你需要使用这些工具&#xff0c;只需按 Win R 键&#x…

CVHub | CVPR 2024 | 英伟达发布新一代视觉基础模型: AM-RADIO = CLIP + DINOv2 + SAM

本文来源公众号“CVHub”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;CVPR 2024 | 英伟达发布新一代视觉基础模型: AM-RADIO CLIP DINOv2 SAM 标题&#xff1a;《AM-RADIO: Agglomerative Vision Foundation Model Reduce Al…

GPT-4o,AI实时视频通话丝滑如人类,Plus功能免费可用

不开玩笑&#xff0c;电影《她》真的来了。 OpenAI最新旗舰大模型GPT-4o&#xff0c;不仅免费可用&#xff0c;能力更是横跨听、看、说&#xff0c;丝滑流畅毫无延迟&#xff0c;就像在打一个视频电话。 现场直播的效果更是炸裂&#xff1a; 它能感受到你的呼吸节奏&#xf…

第 5 篇 : 多节点Netty服务端(可扩展)

说明 前面消息互发以及广播都是单机就可以完成测试, 但实际场景中客户端的连接数量很大, 那就需要有一定数量的服务端去支撑, 所以准备虚拟机测试。 1. 虚拟机准备 1.1 准备1个1核1G的虚拟机(160), 配置java环境, 安装redis和minio 1.2 准备6个1核1G的空虚拟机(161到166), …

C++:编程世界的永恒之石

在编程的广袤领域中&#xff0c;C犹如一块永恒的基石&#xff0c;历经岁月的洗礼&#xff0c;依旧坚固而璀璨。它的深厚底蕴、强大功能和广泛的应用领域&#xff0c;使其成为无数程序员心中的信仰与追求。 一、C&#xff1a;历史与传承的交汇点 C的历史可追溯到上世纪80年代&…

机器学习笔记 PostgresML教程:使用SQL进行机器学习

机器学习的基本做法是将数据转移到模型的环境中进行训练。由于今天的数据库比机器学习模型大好多个数量级,所以PostgresML的思路是,如果我们将模型引入数据集不是会容易得多吗? PostgresML 是一个建立在流行的 PostgreSQL 数据库之上的综合机器学习平台。它引入了一种称为“…

【Pytorch】torch.nn.conv2d

这个函数和我们之前提到的【Pytorch】6.torch.nn.functional.conv2d的使用的作用相似&#xff0c;都是完成CV领域的卷积操作&#xff0c;这里就不在过多赘述 torch.nn.conv2d的使用 打开pytorch的官方文档&#xff0c;我们可以看到 torch.nn.conv2d包含了若干参数 in_channe…

MapReduce代码

WordCount 数据准备&#xff1a; a.txt lxy lxy lxy zhang wsoossj liagn guui liang liagn代码&#xff08;在idea中创建一个Maven工程&#xff09;&#xff1a; mapper&#xff1a; package com.lxy.mr.wordcount.thi;import org.apache.hadoop.io.LongWritable; import…

【35分钟掌握金融风控策略26】定价策略

目录 定价策略 定价策略的开发、部署、监控和调优 定价策略开发 定价策略部署 定价策略监控 定价策略调优 定价策略 定价是对授信审批通过的客户给予合适利率的过程。如何定价、定价多少是由定价策略来决定的。定价策略的制订要遵循“收益覆盖风险”原则&#xff0c;对于…

【Viso画图】Viso导出与图形适配的pdf

step1:选中开发工具点击shapeSheet&#xff0c;选中页 step2&#xff1a;进入页面参数设置窗口&#xff0c;将下面框选的参数设为0,enter后保存 目前效果&#xff1a; step3:选中设计->大小&#xff0c;选择适应页面大小或者自己根据图片调整 目前效果&#xff1a; step4: 以…

C语言:指针(3)

1. 字符指针变量 在指针的类型中我们知道有⼀种指针类型为字符指针 char* ; 本质是把字符串 hello bit. ⾸字符的地址放到了pstr中。上⾯代码的意思是把⼀个常量字符串的⾸字符 h 的地址存放到指针变量 pstr 中。 2. 数组指针变量 2.1 数组指针变量是什么&#xff1f; 答案…

嵌入式科普(16)c语言函数参数的传递方式

目录 一、概述 二、C函数参数 2.1 一张图讲清 2.2 按数据类型分类&#xff1a; 2.2.1 基本数据类型参数&#xff1a; 2.2.2 数组参数&#xff1a; 2.2.3 结构体参数&#xff1a; 2.2.4 指针参数&#xff1a; 2.2.5 函数指针参数&#xff1a; 2.3 按传递方式分类&…

嵌入式数据库概念和基本命令的使用

文章目录 前言一、sqlite数据库概念二、sqlite数据库命令分类和使用1.命令分类1. 系统命令&#xff1a;2. SQLite 命令&#xff1a; 2.系统命令的使用3.sqlite命令的使用 三、sqlite C语言函数的使用和编程方法总结 前言 本篇文章将为大家讲解嵌入式数据库的使用&#xff0c;嵌…

0510Goods的Maven项目

0510Goods的Maven项目包-CSDN博客 数据库字段 商品主页 修改页面 点击商品主页更改信息&#xff0c; 跳转到修改页面&#xff0c; 并保留初始信息。 商品类别最多选取三项&#xff0c;最少选取一项 添加界面 商品类别最多选取三项&#xff0c;最少选取一项

知乎广告推广投放流程以及价格?

知乎作为一个拥有庞大高质量用户群体的知识分享平台&#xff0c;成为了众多品牌不可忽视的广告投放渠道。知乎不仅汇聚了各行各业的专业人士&#xff0c;其独特的社区氛围也为品牌提供了精准触达目标受众的机会。知乎广告推广的投放流程、费用标准&#xff0c;云衔科技提供的专…

如何使用恢复模式修复Mac启动问题?这里提供详细步骤

如果你的Mac无法启动,不要惊慌,Mac有一个隐藏的恢复模式,你可以使用它来诊断和修复任何问题,或者在需要时完全重新安装macOS。以下是如何使用它。 如何在Mac上启动到恢复模式 你需要做的第一件事是启动到恢复模式。尽管操作说明会因你使用的Mac电脑而异,但幸运的是,启动…