यूलैबेल - वर्ड्रैप पाठ


150

क्या ज़रूरत के अनुसार लेबल वर्डवैप टेक्स्ट रखने का कोई तरीका है? मेरे पास वर्ड रैप के लिए लाइन ब्रेक सेट है और लेबल दो लाइनों के लिए पर्याप्त लंबा है, लेकिन ऐसा प्रतीत होता है कि यह केवल लाइन ब्रेक पर लपेटेगा। क्या मुझे इसे ठीक से लपेटने के लिए लाइन ब्रेक जोड़ना होगा? मैं बस इसे लपेटना चाहता हूं अगर यह इसे क्षैतिज रूप से फिट नहीं कर सकता है।

जवाबों:


301

यदि आप numberOfLines0 पर सेट करते हैं (और वर्ड रैप पर लेबल), तो लेबल स्वचालित रूप से लपेट जाएगा और आवश्यकतानुसार कई लाइनों का उपयोग करेगा।

यदि आप UILabelIB में संपादन कर रहे हैं , तो आप एक पंक्ति विराम पाने के लिए option+ दबाकर पाठ की कई पंक्तियों को दर्ज कर सकते हैं return- returnअकेले संपादन समाप्त कर देंगे।


124
खुद की तरह नोज के लिए स्पष्ट करने के लिए, यह होगा: cell.textLabel.numberOfLines = 0; cell.textLabel.lineBreakMode = UILineBreakModeWordWrap;
ब्रायन मोसकाऊ

46
आईओएस 6 और बाद में, उपयोग करें NSLineBreakByWordWrapping, नहीं UILineBreakModeWordWrap
एरोन ब्रेजर

3
आपको निम्न की भी आवश्यकता हो सकती है: label.autoresizingMask = UIViewAutoresizingFlexibleHeight;
विलियम ग्रैंड

6
label.lineBreakMode = .ByWordWrappingऔर label.numberOfLines = 0स्विफ्ट में
AFraser

9
जो किसी के लिए भी यह स्पष्ट नहीं था (मेरे जैसे): यूबिल को इसकी चौड़ाई पर किसी प्रकार की सीमा होनी चाहिए (या तो वास्तविक चौड़ाई की कमी या मार्जिन की कमी से); अन्यथा यह नहीं लिपटेगा।
jcady

27

UILabelएक संपत्ति है lineBreakModeजिसे आप अपनी आवश्यकता के अनुसार सेट कर सकते हैं।


11
"मेरे पास रैप टू वर्ड रैप सेट है"। यह केवल वास्तविक लाइन ब्रेक पर लपेटता है, यह स्वचालित रूप से एक बार लंबे होने पर नहीं टूटेगा।
कोडी

19

स्विफ्ट में आप इसे इस तरह से करेंगे:

    label.lineBreakMode = NSLineBreakMode.ByWordWrapping
    label.numberOfLines = 0

(ध्यान दें कि जिस तरह से लाइनब्रीकमोड लगातार काम करता है वह ओबीजीसी में अलग है)


यह कैसे अलग है पर विस्तार से ध्यान रखें?
माइक

मुझे लगता है कि मेरा मतलब सिर्फ इतना था कि नामकरण अलग है। यह शायद स्विफ्ट 3 में फिर से बदल गया है
नाथन

लाइन ब्रेक मोड को डिफॉल्ट रैपिंग होने के लिए सेट किया जाना चाहिए
MobileMon

@MobileMonin मेरा अनुभव हमेशा ऐसा नहीं होता है। शायद आईबी इसे कुछ परिस्थितियों में बदल देती है?
नाथन

label.lineBreakMode = NSLineBreakByWordWrapping ओब्ज सी में
नूपुर शर्मा

2

Xcode 10, स्विफ्ट 4

लेबल के लिए पाठ लपेटना भी लेबल का चयन करके और गुण निरीक्षक का उपयोग करके स्टोरीबोर्ड पर किया जा सकता है।

लाइन्स = 0 लाइनब्रेक = वर्ड रैप

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


2
ब्रानब्रैंड-न्यू लेबल का उपयोग करते हुए, सीधे इसे देखने के लिए जोड़ते हुए, यह अभी भी मेरे लिए एकल-लाइन लेबल (फोन की चौड़ाई से बड़ी चौड़ाई के साथ) उत्पन्न करता है, लाइनों को 0 पर सेट करने और वर्ड रैप के लिए लाइनब्रेक के बावजूद। क्या कोई अन्य सेटिंग है जिसकी आवश्यकता हो सकती है? क्या मुझे अतिरिक्त कोड संलग्न करने की आवश्यकता है?
फ़िहग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.