मैं स्विफ्ट में एक यूबेल के फ़ॉन्ट आकार को कैसे बदलूं?


246

label.font.pointSize केवल-पढ़ने के लिए है, इसलिए मुझे यकीन नहीं है कि इसे कैसे बदलना है।


विस्तार यूआईबेल {फंक फॉन्ट (आकार: CGFloat) {स्व .font = यूआईएफओएनटी (विवरणक: स्व.फोंट.ऑनडेसस्क्रिप्ट, आकार: आकार)}}
मोहम्मद रजीपुर

जवाबों:


590

आप इसे इस तरह से कर सकते हैं:

label.font = UIFont(name: label.font.fontName, size: 20)

या इस तरह:

label.font = label.font.withSize(20)

यह एक ही फ़ॉन्ट का उपयोग करेगा। 20 जो भी आकार आप चाहते हैं, हो सकता है।

नोट: बाद वाला विकल्प वर्तमान फ़ॉन्ट भार को ओवरराइट कर देगाregular यदि आप फ़ॉन्ट वजन को संरक्षित करना चाहते हैं तो पहले विकल्प का उपयोग करें।

स्विफ्ट 3 अपडेट :

label.font = label.font.withSize(20)

स्विफ्ट 4 अपडेट :

label.font = label.font.withSize(20)

या

label.font = UIFont(name:"fontname", size: 20.0)

और यदि आप सिस्टम फोंट का उपयोग करते हैं

label.font = UIFont.systemFont(ofSize: 20.0)
label.font = UIFont.boldSystemFont(ofSize: 20.0)
label.font = UIFont.italicSystemFont(ofSize: 20.0)

5
यह वास्तव में पॉइंटसेट गुण को फ़ॉन्ट में परिवर्तित करता है। हालाँकि, लेबल फिर से जुड़ने से पहले पॉइंटसेज़ तुरंत 17.0 पर रीसेट हो जाता है। तो वहाँ यह करने के लिए वास्तव में स्क्रीन पर एक अलग फ़ॉन्ट आकार देखने की तुलना में थोड़ा अधिक है।
Jay

1
क्या आप फ़ॉन्ट को 17 पर सेट कर रहे हैं? स्टोरीबोर्ड?
कॉनर

1
मैंने इसे अपने iPhone 5 पर चलाया और आपका कोड काम करता है। यह सिम्युलेटर में एक बग होना चाहिए।
Jay

यह तो दिलचस्प है। हालांकि एक और बग को देखकर वास्तव में आश्चर्य नहीं हुआ। खुशी है कि यह काम कर रहा है
कॉनर

5
जब मैं सिर्फ इसे देख रहा था, तो यह गंभीर रूप से कुछ गलत है, क्योंकि मैंने इसे सिर्फ इसलिए देखा क्योंकि मुझे पता था कि यह तेजी से होगा।
एंड्रयू प्लमर

72

मुझे लगता है कि ऐसा करने का सबसे अच्छा तरीका है - यदि वही फ़ॉन्ट जो पहले से ही सौंपा गया है, तो रखना UILabel होगा:

(स्विफ्ट का उपयोग करके)

label.font = label.font.fontWithSize(20)

(स्विफ्ट 3 का उपयोग करके)

label.font = label.font.withSize(20)

आदर्श रूप में मैं इसे viewDidLayoutSubviewsविधि में सेट करूँगा , क्योंकि हर बार दृश्य में बदलाव की आवश्यकता नहीं है।


39
label.font = UIFont.systemFontOfSize(20)

5
label.font = UIFont.systemFont (ofSize: 20) // स्विफ्ट 3 में
कांग

यह समाधान कस्टम फोंट के लिए काम नहीं करेगा। यह हमेशा सिस्टम फॉन्ट को लौटाएगा।
आवा फय्याज

24

हम अपनी आवश्यकतानुसार फ़ॉन्ट सेट कर सकते हैं,

label.font = UIFont(name: "Avenir-Light", size: 15.0)
label.font = UIFont.boldSystemFontOfSize(15)
label.font = UIFont.italicSystemFontOfSize(15)
label.font = UIFont.systemFontOfSize(17)

8

यदि आप अपने फ़ॉन्ट का आकार बदलना चाहते हैं, तो मैं यह एक्सटेंशन बनाता हूं

// Add extension

extension UILabel {
    func setSizeFont (sizeFont: Double) {
        self.font =  UIFont(name: self.font.fontName, size: sizeFont)!
        self.sizeToFit()
    }
}

// Use

myLabel.setSizeFont(60)

इससे मुझे मदद मिली। मैंने फ़ॉन्ट का आकार बदल दिया है, इसका काम तेजी से चल रहा है।
आर। मोहन

6

आप इस तरह से भी दे सकते हैं

labelName.font = UIFont(name: "systemFont", size: 30)



3

Swift3 में, मान लें कि आपका UILable नाम myLable है और आप ऐसा करने के लिए इसका फ़ॉन्ट आकार बदलना चाहते हैं

myLable.font = UIFont.systemFont(ofSize: 10)

2

आप एक एक्सटेंशन का उपयोग कर सकते हैं।

import UIKit

extension UILabel {

    func sizeFont(_ size: CGFloat) {
        self.font = self.font.withSize(size)
    }
}

इसके प्रयेाग के लिए:

self.myLabel.fontSize(100)

2

Apple बिना किसी कारण के चीजों को बदलता रहता है: स्विफ्ट 4+:

myLabel.font = UIFont.systemFont(ofSize: 16)

लोगों को बर्बाद करने के लिए धन्यवाद सेब यह पता लगाने के लिए कि उन्हें "फ़ॉन्ट आकार" विधियों का उपयोग करने की आवश्यकता है!


2

प्रोग्राम के रूप में

label.font = UIFont.systemFont(ofSize: 20.0)
label.font = UIFont.boldSystemFont(ofSize: 20.0)
label.font = UIFont.italicSystemFont(ofSize: 20.0)

label.font = UIFont(name:"Helvetica Neue", size: 20.0)//Set your font name here

स्टोरी बोर्ड के माध्यम से

0 (शून्य) सेट की गई कई लाइनों को प्रदर्शित करने के लिए, यह आपके लेबल में एक से अधिक लाइन प्रदर्शित करेगा।

यदि आप केवल 2 लाइनों को सेट 2 प्रदर्शित करना चाहते हैं।

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

यदि आप लेबल के लिए न्यूनतम फ़ॉन्ट आकार सेट करना चाहते हैं तो ऑटोश्रंक पर क्लिक करें और न्यूनतम फ़ॉन्ट आकार चुनें विकल्प चुनें

स्क्रीन के नीचे देखें

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

यहां न्यूनतम फ़ॉन्ट आकार सेट करें

EX: 9 (इस छवि में)

यदि आपके लेबल को उस समय अधिक पाठ मिलता है, तो आपका लेबल पाठ 9 तक सिकुड़ जाएगा

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



1

मैंने fontWithSizeलाइट सिस्टम फ़ॉन्ट के साथ एक लेबल के लिए उपयोग किया , लेकिन यह सामान्य सिस्टम फ़ॉन्ट पर वापस बदल जाता है।

यदि आप फ़ॉन्ट के लक्षण रखना चाहते हैं, तो विवरणकों को शामिल करना बेहतर है।

label.font = UIFont(descriptor: label.font.fontDescriptor(), size: 16.0)


1

स्विफ्ट 3 में:

label = UIFont.systemFont(ofSize: 20)

और उदाहरण के लिए सिस्टम प्रीसेट आकार का उपयोग करने के लिए:

label = UIFont.systemFont(ofSize: UIFont.smallSystemFontSize)

मुझे लगता है कि आप लेबल भूल गए हैं। एफओटी
एथन पार्कर


0

स्विफ्ट 3.1

import UIKit

extension UILabel {
    var fontSize: CGFloat {
        get {
            return self.font.pointSize
        }
        set {
            self.font =  UIFont(name: self.font.fontName, size: newValue)!
            self.sizeToFit()
        }
    }
}

0

swift 4:

label.font = UIFont("your font name", size: 15)

आप अपनी परियोजना में सभी दृश्यों में लेबल फ़ॉन्ट सेट करना चाहते हैं, तो भी इसमें कोशिश करें appDelegate>didFinishLaunch: UILabel.appearance().font = UIFont("your font name", size: 15)


0

यदि आप बोल्ड विकल्प के साथ कस्टम फ़ॉन्ट का उपयोग करना चाहते हैं:

nameLabel.font = UIFont(name: "GillSans-Bold", size: 27)

-1

स्विफ्ट 3.1

Label.font = Label.font.withSize (NewValue)


यह सही नहीं है, और कोको नामकरण सम्मेलनों का उपयोग करके नहीं लिखा गया है।
वोमबल

-1

स्टोरीबोर्ड से फ़ॉन्ट आकार बदलना बहुत आसान और सुविधाजनक है, और आप तुरंत परिवर्तन का परिणाम देख सकते हैं।

वास्तव में, स्टोरीबोर्ड पर अन्य फ़ॉन्ट विशेषताओं को बदलना भी बहुत आसान है, जैसे शैली, फ़ॉन्ट परिवार, आदि।

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

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