[Swift通天遁地]一、超级工具-(2)制作美观大方的环形进度条

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10129514.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

目录:[Swift]通天遁地Swift

本文将演示制作美观大方的环形进度条。

首先确保在项目中已经安装了所需的第三方库。

点击【Podfile】,查看安装配置文件。

1 platform :ios, ‘12.02 use_frameworks!
3 
4 target ‘DemoApp' do
5     source 'https://github.com/CocoaPods/Specs.git'
6     pod 'UICircularProgressRing'
7 end

根据配置文件中的相关配置,安装第三方库

然后点击打开【DemoApp.xcworkspace】项目文件。

在项目导航区,打开视图控制器的代码文件【ViewController.swift】

现在编写代码,制作美观大方的环形进度条。

 1 import UIKit
 2 //在当前的类文件中,引入第三方类库
 3 import UICircularProgressRing
 4 
 5 class ViewController: UIViewController {
 6 
 7     //给当前的类,添加一个环形进度条类型的属性
 8     var progressRing:UICircularProgressRingView!
 9     override func viewDidLoad() {
10         super.viewDidLoad()
11         // Do any additional setup after loading the view, typically from a nib.
12         
13         //创建一个指定的矩形区域,
14         let rect = CGRect(x: 20, y: 40, width: 280, height: 280)
15         //并初始化一个位于该矩形区域的环形进度条。
16         progressRing = UICircularProgressRingView(frame: rect)
17         
18         //设置环形进度条的背景颜色为无色
19         progressRing.backgroundColor = UIColor.clear
20         //设置环形进度条的视图样式,环形进度条共有四种视觉样式。
21         //分别用1~4之间的四个数字表示。
22         //当前的样式时内圈比较小,外圈则比较大。
23         progressRing.viewStyle = 1
24         //设置环形进度条的最大值为100
25         progressRing.maxValue = 100
26         //设置环形进度条的字体颜色为浅灰色
27         progressRing.fontColor = UIColor.lightGray
28         //设置环形进度条的进度文字的大小为90
29         progressRing.fontSize = 90
30         //设置内圈端点的样式,端点样式共有默认、圆形、方形等三种样式。
31         //使用1~3之间的三个数字表示
32         progressRing.innerRingCapStyle = 1
33         //设置内圈的宽度为20
34         progressRing.innerRingWidth = 20
35         //设置内圈与外圈之间的距离为10
36         progressRing.innerRingSpacing = 10
37         //设置内圈的线条颜色为橙色
38         progressRing.innerRingColor = UIColor.orange
39         //设置外圈的线条颜色为紫色
40         progressRing.outerRingColor = UIColor.purple
41         //设置外圈的宽度同样为20
42         progressRing.outerRingWidth = 20
43         //设置环形进度条的动画样式,
44         //动画样式共有:线性、渐入、渐出、渐入渐出等四种。
45         //此处设置为线性动画的样式。
46         progressRing.animationStyle = kCAMediaTimingFunctionLinear
47         
48         //设置按钮的显示区域
49         let bt2 = UIButton(type: UIButtonType.roundedRect)
50         bt2.frame = CGRect(x: 20, y: 380, width: 280, height: 40)
51         //设置按钮的背景颜色
52         bt2.backgroundColor = UIColor.brown
53         //设置按钮的字体颜色
54         bt2.tintColor = UIColor.white
55         //设置按钮的在正常状态下的标题文字
56         bt2.setTitle("Start", for: UIControlState())
57         //给按钮绑定点击事件
58         bt2.addTarget(self, action: #selector(ViewController.buttonTap(_:)), for: UIControlEvents.touchUpInside)
59         
60         //将按钮和环形进度条对象,
61         //依次添加到当前视图控制器的根视图。
62         self.view.addSubview(bt2)
63         self.view.addSubview(progressRing)
64         //设置根视图的背景颜色为棕色
65         self.view.backgroundColor = .brown
66     }
67     
68     //添加一个方法,用来响应按钮的点击事件
69     func buttonTap(_ button:UIButton)
70     {
71         //当按钮被点击时,调用环形进度条的设置进度方法,
72         //将环形进度条的进度,以动画的方式,
73         //在5秒钟的时间里,前进到100的位置
74         progressRing.setProgress(value: 100, animationDuration: 3.2)
75         {
76             //当环形进度条到达指定数值时,
77             //在控制台输出一条指示信息
78             print("Done animating!")
79         }
80     }
81 
82     override func didReceiveMemoryWarning() {
83         super.didReceiveMemoryWarning()
84         // Dispose of any resources that can be recreated.
85     }
86 }

 

转载于:https://www.cnblogs.com/strengthen/p/10129514.html

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

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

相关文章

SPOJ QTREE6 lct

题目链接 岛娘出的题。还是比較easy的 #include <iostream> #include <fstream> #include <string> #include <time.h> #include <vector> #include <map> #include <queue> #include <algorithm> #include <stack> #in…

使用charles 抓取手机上的操作

Charles上的设置要截取iPhone上的网络请求&#xff0c;我们首先需要将Charles的代理功能打开。在Charles的菜单栏上选择“Proxy”->“Proxy Settings”&#xff0c;填入代理端口8888&#xff0c;并且勾上”Enable transparent HTTP proxying” 就完成了在Charles上的设置。如…

FreeCodeCamp纳什维尔聚会的回顾

by Seth Alexander塞斯亚历山大(Seth Alexander) FreeCodeCamp纳什维尔聚会的回顾 (A Recap from the freeCodeCamp Nashville Meetup) At a recent freeCodeCamp meetup, a small group of campers got together to solve some coding challenges and we talk shop.在最近的f…

php查询车位系统代码,php车辆违章查询数据示例

方便有车一族随时了解自己是否有过交通违章&#xff0c;避免因遗忘或逾期处理违章罚单而造成的不必要损失。本代码示例是基于聚合数据全国车辆违章查询API的调用&#xff0c;有需要的可以往下看。使用前你需要&#xff1a;一、引入封装好的请求类class.juhe.wz.phpheader(Conte…

[HNOI2011]XOR和路径

嘟嘟嘟 一看到异或&#xff0c;就想到按位处理&#xff0e; 当处理到第\(i\)位的时候&#xff0c;\(f[u]\)表示节点\(u\)到\(n\)的路径&#xff0c;这一位为\(1\)的期望&#xff0c;那么为\(0\)就是\(1 - f[u]\)&#xff0c;于是有\[f[u] \frac{1}{d[u]} (\sum _ {v \in V, w …

PHP 文件加密Zend Guard Loader 学习和使用(如何安装ioncube扩展对PHP代码加密)

一、大体流程图 二、PHP 项目文件加密 下表列出了Zend产品中的PHP版本及其内部API版本和Zend产品版本。 如何加密请往后看 三、如何使用 第一步&#xff1a;确认当前环境 Amai Phalcon 前&#xff0c;请确认您具备以下两个条件&#xff0c;如果您的环境不满足此条件&#xff0c…

前向声明

前向声明的定义&#xff1a;有些时候我们可以声明一些类但是并不去定义它&#xff0c;当然这个类的作用也很有限了。 如&#xff1a;class A; 声明一个foo类&#xff0c;这个声明&#xff0c;有时候也叫做前向声明(forward declaration)&#xff0c;在声明完这个foo类之后&…

php寻找文本,PHP文本数据库的搜索方法_php

//php文本数据库的搜索方法searchstr("/".preg_quote($searchstr)."/");//$searchstr是查找的关键字$recordsfile($file);//获取所有的记录数http://www.gaodaima.com/45906.htmlPHP文本数据库的搜索方法_php//$file是查找的数据文件$search_reocrdspreg_g…

react vs 2017_我在React Europe 2017上学到了什么

react vs 2017by Nicolas Cuillery由Nicolas Cuillery 我在React Europe 2017上学到了什么 (What I learned at React Europe 2017) Few days ago, the 3rd edition of the biggest React conference in Europe took place in Paris. No heatwave or transportation strike th…

rem 之js代码获取font-size值(适合移动手机端)

这两天学的是自适应&#xff0c;代码有点乱。而且这几天忙着写实习报告&#xff0c;也没有时间去整理。 但是&#xff0c;这下面代码吧&#xff0c;是可以获取html的font-size值的&#xff0c;然后用来设置相对单位rem的从而达到自适应效果的&#xff1b;看到红色的width了吧&a…

关于C#中委托的一点理解

C#中委托是一种类型。可以这么笼统的理解&#xff1a;int型变量代表一个整型&#xff0c;而委托类型的变量代表一个方法的地址&#xff08;将方法名称传入constructor并实例化该委托变量&#xff09;。 --By Brisk Yu 1 为何要使用委托 我觉得网上关于什么现实生活的举例并不好…

阿里的事前验尸_(不太完全)100天的代码-验尸

阿里的事前验尸by JS由JS (不太完全)100天的代码-验尸 ((Not quite) 100 Days of Code — A Postmortem) At the end of last year, I wrote about my experience coding and making daily commits to GitHub for 30 consecutive days. I also pledged to keep the streak goi…

php超市管理系统论文,超市管理系统的设计与实现

当今社会为信息社会&#xff0c;世界已经进入在计算机信息管理领域中激烈竞争的时代。对于一般的商户而言&#xff0c;杂乱无章地陈放着的商品无疑会耗费他们大量的时间去对其整理并一一分类。他们需要更加便捷的手段去管理他们的商品以节约他们的时间成本以及人工成本。并且就…

只能输入正整数 以及常用的正则表达式

<input typetext idSYS_PAGE_JumpPage nameSYS_PAGE_JumpPage size3 maxlength5 οnkeyupthis.valuethis.value.replace(/[^1-9]/D*$/,"") οndragenter"return false" οnpaste"return !clipboardData.getData(text).match(//D/)"" sty…

jq 自动滑动轮换(向后插入小块)

// JavaScript Documentvar Marquee { arrIdObj : {/*marqueebox : {distance:-95,//移动距离delay:3000,//延迟时间speed:1000//移动时间},minCount:2 */}, //创建对象 startMarquee:function(){ //给参数赋值 if(this.arrIdObj ! null && typeof this.arrIdObj &qu…

bzoj 2178 圆的面积并 —— 辛普森积分

题目&#xff1a;https://www.lydsy.com/JudgeOnline/problem.php?id2178 先看到这篇博客&#xff1a;https://www.cnblogs.com/heisenberg-/p/6740654.html 好像本应算弓形面积、三角形面积之类的&#xff0c;但不会...于是用辛普森积分硬做... 参考了这篇博客&#xff1a;ht…

php获取访问者ip地址汇总,php获取访问者IP地址汇总_PHP

//方法1&#xff1a;$ip $_SERVER["REMOTE_ADDR"];echo $ip;//方法2&#xff1a;代码如下:$user_IP ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];$user_IP ($user_IP) ? $user_IP : $…

Charles抓包工具的使用

2019独角兽企业重金招聘Python工程师标准>>> 感谢唐巧分享的文章&#xff0c;受益匪浅 文章目录 1. 目录及更新说明2. Charles 限时优惠3. 简介4. 安装 Charles5. 将 Charles 设置成系统代理6. Charles 主界面介绍7. 过滤网络请求8. 截取 iPhone 上的网络封包 8.1. …

python每秒20个请求_使用Python每秒百万个请求

python每秒20个请求by Paweł Piotr Przeradowski通过PawełPiotr Przeradowski 使用Python每秒百万个请求 (A million requests per second with Python) Is it possible to hit a million requests per second with Python? Probably not until recently.使用Python每秒可以…

iOS开发——处理1000张图片的内存优化

一、项目需求 在实际项目中&#xff0c;用户在上传图片时&#xff0c;有时会一次性上传大量的图片。在上传图片前&#xff0c;我们要进行一系列操作&#xff0c;比如&#xff1a;旋转图片为正确方向&#xff0c;压缩图片等&#xff0c;这些操作需要将图片加载到内存中&#xff…