欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS自定義圓形進度提示控件

 更新時間:2018年06月29日 09:17:06   作者:乞力馬扎羅的雪CYF  
這篇文章主要為大家詳細介紹了iOS自定義圓形進度提示控件,具有一定的參考價值,感興趣的小伙伴們可以參考一下

 iOS中默認的進度條是水平方向的進度條,這往往不能滿足我們的需求。但是我們可以自定義類似的圓形的進度提示控件,主要使用iOS中的繪圖機制來實現(xiàn)。這里我們要實現(xiàn)一個通過按鈕點擊然后圓形進度提示不斷增加的效果。

(1)新建一個Cocoa Touch Class,注意要繼承自UIView。這個是繪制圖形的類,繪制一個圓形的背景和扇形的進度。具體實現(xiàn)如下:

import UIKit

class ProgressControl: UIView {

 
 override init(frame: CGRect) {
 super.init(frame: frame)
 
 self.backgroundColor = UIColor(white: 1, alpha: 0)//初始化繪圖背景為白色;
 }
 
 required init(coder aDecoder: NSCoder) {
 super.init(coder: aDecoder)
 }

 private var _progressValue:CGFloat = 0//這個就是當前的進度;
 
 func getProgressValue()->CGFloat{
 
 return _progressValue
 }
 
 func setProgressvalue(value:CGFloat){//設(shè)置進度;
 
 _progressValue = value
 
 setNeedsDisplay()
 }

 
 override func drawRect(rect: CGRect) {//繪制圓形背景和扇形進度;
 
 var context = UIGraphicsGetCurrentContext()
 
 var r = rect.width/2
 
 CGContextAddArc(context, r, r, r, 0, 3.1415926 * 2 , 0)
 CGContextSetRGBFillColor(context, 0.5, 0.5, 0.5, 1)
 CGContextFillPath(context)
 
 CGContextAddArc(context, r, r, r, 0, 3.1415926 * 2 * _progressValue, 0)
 CGContextAddLineToPoint(context, r, r)
 CGContextSetRGBFillColor(context, 0, 0, 1, 1)
 CGContextFillPath(context)
 
 }
 
}

(2)界面中拖入一個按鈕,拖拽Action事件。在ViewController中實現(xiàn)如下:

import UIKit

class ViewController: UIViewController {

 var progressControl:ProgressControl!
 
 override func viewDidLoad() {
 super.viewDidLoad()

 
 progressControl = ProgressControl(frame:CGRect(x: 100, y: 100, width: 100, height: 100))
 self.view.addSubview(progressControl)
 
 }
 
 //點擊按鈕,增加進度
 @IBAction func addProgressValuePressed(sender: UIButton) {
 
 progressControl.setProgressvalue(progressControl.getProgressValue()+0.1)
 
 }

 override func didReceiveMemoryWarning() {
 super.didReceiveMemoryWarning()
 // Dispose of any resources that can be recreated.
 }


}

(3)最后的實現(xiàn)效果如下:

對于其他的觸發(fā)事件,也可以使用這個自定義圓形進度控件來進行提示。

github主頁:地址  。歡迎大家訪問!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • IOS實現(xiàn)聊天界面底部菜單欄效果

    IOS實現(xiàn)聊天界面底部菜單欄效果

    本文給大家分享的是放boss直聘當中的聊天信息界面,主要思路是約束動畫,實現(xiàn)代碼比較簡單,下面小編通過本文給大家分享IOS實現(xiàn)聊天界面底部菜單欄效果,需要的的朋友參考下吧
    2017-09-09
  • 解決SDK注入權(quán)限驗證安卓正常,IOS出現(xiàn)config fail的方法

    解決SDK注入權(quán)限驗證安卓正常,IOS出現(xiàn)config fail的方法

    這篇文章主要介紹了解決SDK注入權(quán)限驗證安卓正常,IOS出現(xiàn)config fail的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • iOS利用UIScrollView實現(xiàn)無限滾動效果

    iOS利用UIScrollView實現(xiàn)無限滾動效果

    這篇文章主要給大家介紹了iOS如何利用UIScrollView實現(xiàn)無限滾動的效果,首先需要說明的是,文本所講的是一種"笨辦法",但是好理解且容易實現(xiàn),在圖片不多的時候用它也無妨。感興趣的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • iOS 12適配以及問題小記

    iOS 12適配以及問題小記

    蘋果官方在上個月推送了iOS12系統(tǒng),作為一名開發(fā)者當然要緊跟更新技術(shù),所以下面這篇文章主要給大家介紹了關(guān)于iOS 12適配以及一些問題,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2018-07-07
  • ios使用AVFoundation讀取二維碼的方法

    ios使用AVFoundation讀取二維碼的方法

    這篇文章主要介紹了ios使用AVFoundation讀取二維碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • iOS使用pageViewController實現(xiàn)多視圖滑動切換

    iOS使用pageViewController實現(xiàn)多視圖滑動切換

    這篇文章主要為大家詳細介紹了iOS使用pageViewController實現(xiàn)多視圖滑動切換,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • 在uiview 的tableView中點擊cell進入跳轉(zhuǎn)到另一個界面的實現(xiàn)方法

    在uiview 的tableView中點擊cell進入跳轉(zhuǎn)到另一個界面的實現(xiàn)方法

    這篇文章主要介紹了在uiview 的tableView中點擊cell進入跳轉(zhuǎn)到另一個界面的實現(xiàn)方法,首先重寫uiviewcontrol方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • 淺談強大易用支持URL Rewrite的iOS路由庫FFRouter

    淺談強大易用支持URL Rewrite的iOS路由庫FFRouter

    FRouter 是 iOS 中一個強大且易用的 URL 路由庫,支持 URL Rewrite,基于匹配查找 URL,效率高。非常具有實用價值,需要的朋友可以參考下
    2018-10-10
  • 淺析iOS的Xcconfig

    淺析iOS的Xcconfig

    本篇文章介紹IOS中Xcconfig的相關(guān)知識內(nèi)容,有興趣的朋友學(xué)習(xí)下吧。
    2018-01-01
  • Xcode 9下適配iPhoneX導(dǎo)致iOS 10不兼容問題的解決方法

    Xcode 9下適配iPhoneX導(dǎo)致iOS 10不兼容問題的解決方法

    這篇文章主要給大家介紹了關(guān)于Xcode 9下適配iPhoneX導(dǎo)致iOS 10不兼容問題的解決方法,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04

最新評論