Im creating a simple typing app with timer. The timer should be in a form of a progress bar that decrements every second.
To implement the progressbar, I intended to set the progress to 0.1 lesser to the current progress every 1 second. But there is an "Unrecognized selector for instance " error when i set the progress. Is there any other way to work around.
import Foundation
import UIKit
class TestView: UIViewController, UITextInputTraits {
    @IBOutlet weak var TestLabel: UILabel!
    @IBOutlet weak var TypingField: UITextField!
    @IBOutlet weak var progressView: UIProgressView!
    var time : Float = 0.0
    var timer: NSTimer!
    var test = 0;
    var progress : Float = 1
    var myMutableString = NSMutableAttributedString()
    var testStringArray = ["abode" , "tutorial" , "completed",
                            "war", "method", "continue",
                            "machine", "texting" , "iterate"]
    var idx = 0;    
    var setProg : Float = 1     
    func textFieldDidChange(textField: UITextField) {
        let s = TypingField.text!
        if(s.characters.last == " "){
            let word = s.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())
            if(!word.isEmpty){
                print(testStringArray[idx])
                if(word == testStringArray[idx]){
                    idx++;
                    TypingField.text = "";
                    TestLabel.text = testStringArray[idx];
                }else{
                    TypingField.text = "";
                }
            }
        }
    }
    func setProgress() {
        setProg -= 0.1
        progressView.progress = setProg  <-- cannot decrement progress bar
    }
    override func viewDidLoad() {
        super.viewDidLoad() 
        TypingField.autocorrectionType = .No
        TypingField.autocapitalizationType = .None 
        timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector:Selector("setProgress"), userInfo: nil, repeats: true)  
        TestLabel.text = testStringArray[idx];
        TypingField.addTarget(self, action: "textFieldDidChange:", forControlEvents: UIControlEvents.EditingChanged)                            
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}
 
     
    