2015-06-09 5 views
5

में बटन दबाकर मैं लेबल मान को कैसे बढ़ा सकता हूं, जब मैं बटन पर क्लिक करता हूं तो मैं 2 से लेबल बढ़ाने की कोशिश कर रहा हूं।स्विफ्ट

import UIKit 

class ViewController: UIViewController { 

    var cur = 0; 

    @IBOutlet weak var money: UILabel! 

    @IBAction func pressbutton(sender: UIButton) { 
     cur = money.text!.toInt()!; 
     self.money.text = String(cur + 2); 

    } 

} 

यहाँ मेरे वर्तमान कोड है, लेकिन मैं) त्रुटि

toInt (हो रही है unavaliable है: इस लाइन पर उपयोग इंट() प्रारंभकर्ता

cur = money.text!.toInt()!; 

उत्तर

4

आप निम्न त्रुटि को अपमानजनक कोड बदलकर इस त्रुटि को ठीक कर सकते हैं:

cur = Int(money.text!)!; 

प्रारंभकर्ताओं के बारे में और पढ़ें here। एक अंश:

आरंभिक कक्षा, संरचना, या उपयोग के लिए गणना के उदाहरण की तैयारी की प्रक्रिया है। इस प्रक्रिया में उस उदाहरण पर प्रत्येक संग्रहीत संपत्ति के लिए प्रारंभिक मान सेट करना शामिल है और नए उदाहरण के उपयोग के लिए आवश्यक किसी भी अन्य सेटअप या प्रारंभिक प्रदर्शन को करने के लिए तैयार है।

9

आपको एमवीसी प्रोग्रामिंग के अनुसार अपने लेबल को बढ़ाने के लिए लेबल की सामग्री का उपयोग नहीं करना चाहिए। इसके बजाय, इसलिए जैसे चर के लिए किसी प्रॉपर्टी पर्यवेक्षक जोड़कर अपने Int लेबल की दुकान और अद्यतन करने के लिए एक चर का उपयोग करें:

class ViewController: UIViewController { 

    @IBOutlet weak var someLabel: UILabel! 

    var someValue: Int = 0 { 
     didSet { 
      someLabel.text = "\(someValue)" 
     } 
    } 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     someValue = 0 // didSet is called when the variable is changed, not upon initialization. 
    } 

    @IBAction func buttonPressed(sender: UIButton) { 
     someValue += 2 
    } 
} 

इसके अलावा, मैं cur से कुछ अधिक वर्णनात्मक करने के लिए अपने चर का नाम बदलने पर विचार करेंगे, और आप छोड़ सकते हैं अर्धविराम क्योंकि वे अनावश्यक हैं।

+4

यह अच्छी सलाह है, +1। –