स्विफ्ट Xcode 6 में बटन टेक्स्ट कैसे बदलें?


122

यहाँ मैं क्या करने की कोशिश कर रहा हूँ। यदि आपने कभी हेलो या सीओडी खेला है, तो आपको पता होगा कि आप एक हथियार लोड-आउट का नाम बदल सकते हैं।

मैं जो कर रहा हूं वह इसे बना रहा है ताकि आप टेक्स्ट फ़ील्ड का उपयोग करके अपना लोड-आउट नाम बदल सकें। यह समस्या है, लोड-आउट मेनू में लोड-आउट नाम एक बटन है (उस लोड-आउट के बारे में जानकारी का चयन करने और देखने के लिए) और मैं इसे लिख सकता हूं:

@IBAction func renameClassButton(sender: AnyObject) {
    classTopButton.text = "\(classTopTextField)"
}

इसे छोड़कर [classTopButton] एक बटन है जो '.text' प्रत्यय की अनुमति नहीं देता है

जवाबों:


322

तुम कर सकते हो:

button.setTitle("my text here", forState: .normal)

स्विफ्ट 3 और 4:

button.setTitle("my text here", for: .normal)

14
या थोड़ा छोटा है। आप UIControlStateभाग को छोड़ सकते हैं और जैसे लिख सकते हैं button.setTitle("my text here", forState: .Normal)
मुस्तफा

3
मुझे लगता है कि यह उल्लेख करने में मदद करता है: यदि आप स्टोरीबोर्ड का लाभ उठा रहे हैं तो buttonएक IBOutlet(इसके विपरीत IBActionजिसमें कोड की यह पंक्ति है)।
सेर्गी

23

Xcode 8 में - स्विफ्ट 3 :

button.setTitle( "entertext" , for: .normal )


3
अब .normalइसके बजाय दूसरा तर्क दिया गया है .Normal
टेड हॉप

1
पूंजी .Normalअब एक त्रुटि देगी। अंडरकरेज अब सही है। .normal
जोशुआ नृत्य

मुझे कहना होगा कि मूल उत्तर था: button.setTitle ("एंटरटेक्स्ट", इसके लिए: .Normal) और यह स्विफ्ट 3.0 समर्थन के साथ Xcode के पहले संस्करण के लिए वेरिएंट पर काम कर रहा है
निकोला ल्यूक

7

अब यह स्विफ्ट 3 के लिए है,

    let button = (sender as AnyObject)
    button.setTitle("Your text", for: .normal)

(चर की निरंतर घोषणा आवश्यक नहीं है कि आप इस तरह से बटन से प्रेषक का उपयोग करें)

    (sender as AnyObject).setTitle("Your text", for: .normal)

याद रखें इसका उपयोग आपके बटन के आईबीएक्शन के अंदर किया जाता है।


3

आप प्रेषक तर्क का उपयोग कर सकते हैं

  @IBAction func TickToeButtonClick(sender: AnyObject) {

        sender.setTitle("my text here", forState: .normal)


}

यह Xcode के पहले संस्करण के लिए तेजी से 3.0 समर्थन के साथ बाद में काम कर रहा है। असामान्य हो जाता है। असामान्य
निकोला


2

ध्यान दें:

लाइन

someButton.setTitle("New Title", forState: .normal)

काम करता है केवल जब शीर्षक प्रकार सादा है

यहाँ छवि विवरण दर्ज करें


1

ध्यान दें कि यदि आप NSButton का उपयोग कर रहे हैं setTitle, तो कोई दुर्गंध नहीं है , इसके बजाय, यह एक संपत्ति है।

@IBOutlet weak var classToButton: NSButton!

. . .


classToButton.title = "Some Text"

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.