Swift 简单控件示例:进度条(UIProgressView)

转载请声明出处:http://blog.csdn.net/jinnchang/article/details/44802019
------------------------------------------------------------------------------------------

//
//  ViewController.swift
//  UIProgressViewSample
//
//  Created by jinnchang on 15/4/2.
//  Copyright (c) 2015年 Jinn Chang. All rights reserved.
//

import UIKit

class ViewController: UIViewController {
    
    var button: UIButton!
    var progressView: UIProgressView!
    
    var timer: NSTimer!
    var remainTime = 10

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        
        button = UIButton.buttonWithType(.System) as UIButton
        button.frame = CGRectMake(30, 50, self.view.frame.size.width - 60, 100)
        button.setTitle("开始计时", forState: .Normal)
        button.addTarget(self, action: "buttonAction", forControlEvents: .TouchUpInside)
        
        progressView = UIProgressView(progressViewStyle: .Bar)
        progressView.frame = CGRectMake(30, 200, self.view.frame.size.width - 60, 100)
        progressView.progress = 1.0
        
        self.view.addSubview(button)
        self.view.addSubview(progressView)
    }

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

    /// 响应按钮点击事件
    func buttonAction() {
        button.enabled = false
        timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "timerAction", userInfo: nil, repeats: true)
        timer.fire()
    }
    
    /// 响应定时器事件
    func timerAction() {
        if(remainTime < 0) {
            timer.invalidate()
            println("倒计时结束")
        } else {
            remainTime = remainTime - 1
            let progressValue = Float(remainTime)/10
            progressView.setProgress(progressValue, animated: true)
        }
    }

}
------------------------------------------------------------------------------------------
GitHub 上项目地址:UIProgressViewSample
控件更多相关属性及方法参考:UIProgressView Class Reference
文章最后更新时间:2015年4月3日11:39:23

你可能感兴趣的:(ios,swift,进度条,UIProgressView)