IOS使用自带的API绘制一个加载进度的圆圈
来源:互联网 发布:新网域名代理平台 编辑:程序博客网 时间:2024/05/06 08:27
新建一个继承UIView类的文件progresscontrol
在这个progresscontrol文件中写入
private var _progressValue:CGFloat = 0 internal func getProgressValue()->CGFloat{ return _progressValue } //在外界获取它的值 internal func setProgressValue(value:CGFloat){ _progressValue = value setNeedsDisplay() //重绘 } //在外界修改它的值
drawRect中的代码如下
override func drawRect(rect: CGRect) { // Drawing code var ctx = UIGraphicsGetCurrentContext() //正方形的控件Rect var r = rect.width/2 //坐标中心点 //绘制背景颜色================= CGContextAddArc(ctx, r, r, r, 0, 3.1415926*2, 0) CGContextSetRGBFillColor(ctx, 0.7, 0.7, 0.7, 1) CGContextFillPath(ctx) //=========================== //绘制扇形============== CGContextAddArc(ctx, r, r, r, 0, 3.1415926*2*_progressValue, 0)//弧形 CGContextAddLineToPoint(ctx, r, r)//连线到中心点r,r CGContextSetRGBFillColor(ctx, 0, 1, 0, 1) //填充色 CGContextFillPath(ctx)//填充 //=========================== }
在故事版中添加一个按钮控件,按住control拖入viewcontroller文件中选择IBAction
private var pc : progresscontrol! //全局定义pc,为progresscontrol类型 //动态设置 每点击一次就加0.1 @IBAction func addprogress(sender: AnyObject) { pc.setProgressValue(pc.getProgressValue()+0.1) } override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. pc = progresscontrol(frame:CGRect(x: 100, y: 100, width: 100, height: 100))// pc.setProgressValue(0.2)//设置值 self.view.addSubview(pc) //添加到画面中 }
运行之后是一个黑色的背景,接着回到progresscontrol文件中
override init(frame: CGRect) { super.init(frame: frame) self.backgroundColor = UIColor(white: 1, alpha: 0) //设置背景为白色全透明 } required init(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") }
把背景设置为白色全透明的,就完成了。
0 0
- IOS使用自带的API绘制一个加载进度的圆圈
- 消除RadioButton中的自带的圆圈
- caffe 使用自带的_net.py绘制网络图问题
- 使用caffe自带的工具绘制loss函数曲线
- 使用 IOS 自带 API 扫描二维码
- 在双击过的地方绘制一个圆圈 draw_circle.py
- 绘制一个可以更改进度的圆弧
- 使用ios自带的socket
- iOS系统自带地位的使用
- anroid Api demo自带的一个shake(摇头)效果
- iOS-绘制一个带动画的五角星图标
- 自定义一个带箭头旋转的圆圈 , 配置服务器后台
- 自绘制带图标的菜单项
- 使用java自带的zip api压缩解压缩文本
- 使用JAVA自带的API XStream读取XML文件
- java使用redis自带的排序api
- 使用SQLite中自带的API操作SQLite数据库
- 使用FileSystem自带的api读取hdfs中的文件
- hdu 1238 Substrings
- Android Telephony 分析【全】
- 范围查询(Range)-----学堂在线编程题
- GOF 23设计模式之 外观模式 迪米特法则
- opencv3.0.0环境搭建
- IOS使用自带的API绘制一个加载进度的圆圈
- HDU 5473(There was a kingdom-凸包+dp)
- 弹出键盘 输入框上移
- Integer类
- iris数据集的读取,训练,预测
- Ubuntu快速启动栏
- CC2541低功耗的实现方法
- SpringMVC学习指南<二> 模型2和MVC模式
- zendstudio 10 安装