• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >swift > swift实现自定义圆环进度提示效果

swift实现自定义圆环进度提示效果

作者:韩万杰 字体:[增加 减小] 来源:互联网 时间:2017-05-28

韩万杰 通过本文主要向大家介绍了圆环进度条,js圆环进度条,android圆环进度条,canvas圆环进度条,css圆环进度条等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例为大家分享了swift圆环进度提示效果的实现代码,供大家参考,具体内容如下

效果图:

实现代码:

/
// ViewController.swift
// PureSwiftAuto
//
// Created by 王木木 on 16/5/17.
// Copyright © 2016年 王木木. All rights reserved.
//
 
import UIKit
 
class ViewController: UIViewController {
   
  let cireView = cireview.newAutoLayoutView()
   
  override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
    creatCire()
  }
   
  func creatCire(){
    self.view.addSubview(cireView)
    self.cireView.value = 2
    self.cireView.maximumValue = 100
    self.cireView.backgroundColor = UIColor.yellowColor()
    self.cireView.frame = CGRectMake(100, 100, 100, 100)
    wangmumu()
  }
   
  func wangmumu(){
     
    self.cireView.value += 2
     
    if self.cireView.value == 90 {return}
     
    self.performSelector("wangmumu", withObject: self, afterDelay: 0.2)
     
  }
   
}
 
 
class cireview: UIView{
   
  var value: CGFloat = 0 {
    didSet {
      self.setNeedsDisplay()
    }
  }
   
  var maximumValue: CGFloat = 0 {
    didSet { self.setNeedsDisplay() }
  }
  override init(frame: CGRect) {
    super.init(frame: frame)
    self.opaque = false
  }
   
   
  override func drawRect(rect: CGRect) {
    super.drawRect(rect)
     
    //线宽度
    let lineWidth: CGFloat = 10.0
    //半径
    let radius = CGRectGetWidth(rect) / 2.0 - lineWidth
    //中心点x
    let centerX = CGRectGetMidX(rect)
    //中心点y
    let centerY = CGRectGetMidY(rect)
    //弧度起点
    let startAngle = CGFloat(-90 * M_PI / 180)
    //弧度终点
    let endAngle = CGFloat(((self.value / self.maximumValue) * 360 - 90) ) * CGFloat(M_PI) / 180
     
    //创建一个画布
    let context = UIGraphicsGetCurrentContext()
     
    //画笔颜色
    CGContextSetStrokeColorWithColor(context, UIColor.blueColor().CGColor)
     
    //画笔宽度
    CGContextSetLineWidth(context, lineWidth)
     
    //(1)画布 (2)中心点x(3)中心点y(4)圆弧起点(5)圆弧结束点(6) 0顺时针 1逆时针
    CGContextAddArc(context, centerX, centerY, radius, startAngle, endAngle, 0)
     
    //绘制路径
    CGContextStrokePath(context)
     
    //画笔颜色
    CGContextSetStrokeColorWithColor(context, UIColor.darkGrayColor().CGColor)
     
    //(1)画布 (2)中心点x(3)中心点y(4)圆弧起点(5)圆弧结束点(6) 0顺时针 1逆时针
    CGContextAddArc(context, centerX, centerY, radius, startAngle, endAngle, 1)
     
    //绘制路径
    CGContextStrokePath(context)
     
  }
   
  required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
  }
   
}
</div>

以上就是本文的全部内容,希望对大家的学习有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • swift实现自定义圆环进度提示效果

相关文章

  • 2017-05-28Swift语言中的函数学习教程
  • 2017-05-28Swift的函数式编程详解
  • 2017-05-28通过一个map替换字符串中指定的字符变量方法
  • 2017-05-28MyBatis快速入门
  • 2017-05-28Swift开发之UITableView状态切换效果
  • 2017-05-28swift 3.0 实现短信验证码倒计时功能
  • 2017-05-28Tomcat+JDK安装和配置教程
  • 2017-05-28swift在IOS应用图标上添加提醒个数的方法
  • 2017-05-28初步理解Swift中的泛型
  • 2017-05-28详解Swift面向对象编程中的方法(method)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • iOS中Swift指触即开集成Touch ID指纹识别功能的方法
    • Swift教程之方法详解
    • Swift 3.0 enum 的灵活使用介绍
    • Eclipse智能提示及快捷键
    • Swift数组详细用法解析
    • SSM框架+Plupload实现分块上传大文件示例
    • Swift和C语言混合编程教程
    • 使用Post方法模拟登陆爬取网页的实现方法
    • 理解二叉堆数据结构及Swift的堆排序算法实现示例
    • Swift中的访问控制和protected

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有