2015-09-23 8 views
8

मेरे पास UITextView कुछ गतिशील सामग्री दिखा रहा है जो आकार में भिन्न हो सकता है। टेक्स्टव्यू में कोई स्क्रॉलिंग की अनुमति नहीं है और इसका आकार सामग्री से स्वतंत्र है। अपनी ऑटो-लेआउट बाधाओं को देखते हुए, उदाहरण के लिए आईफोन 5 और आईफोन 6 प्लस पर टेक्स्ट व्यू का एक अलग क्षैतिज आकार होता है।यूआईटीक्स्टव्यू तीन बिंदुओं के साथ क्लिपिंग?

मुझे यह पसंद है कि अंत में 3 बिंदुओं के साथ "..." के साथ आवश्यक होने पर मेरा टेक्स्ट क्लिप किया जाए। (UITextView के नीचे एक "अधिक" UIButton सफारी लॉन्च कर रहा है)

मुझे यकीन नहीं है कि कोई UITextView प्रॉपर्टी है या मुझे कुछ कोड पर विचार करना चाहिए जो जांचता है कि वर्तमान परिस्थितियों में टेक्स्टव्यू कितने वर्ण प्रदर्शित कर सकते हैं और तदनुसार दिखाए जाने के लिए मेरी स्ट्रिंग को संशोधित करें (काटने और जोड़ना "...")।

धन्यवाद।

+0

क्यों लेबल के बजाय पाठ दृश्य? – Wain

उत्तर

16

UITextView लाइन ब्रेक मोड सेट करने का प्रयास करें। यह UILabel की तरह काम करता है और अंत में "..." का उपयोग करना चाहिए।

self.textView.textContainer.lineBreakMode = NSLineBreakByTruncatingTail; 

https://developer.apple.com/library/ios/documentation/UIKit/Reference/NSTextContainer_Class_TextKit/index.html#//apple_ref/occ/instp/NSTextContainer/lineBreakMode

+0

हैलो, यह काम नहीं कर रहा है। मुझे आश्चर्य है कि मैं क्या गलत कर रहा हूँ। शायद यह किसी अन्य संपत्ति के साथ असंगत है? मैं कुछ खास नहीं कर रहा हूँ। – MikaelW

+1

जब आप एक स्ट्रिंग सेट करते हैं तो बहुत कुछ होता है तो आप क्या देखते हैं? आपको 'maxNumberOfLines' को संक्षिप्त करने के लिए उपयुक्त मूल्य के लिए उपयुक्त मान पर सेट करने की आवश्यकता हो सकती है ताकि इसे छोटा कर दिया जा सके। –

+0

तुम भी रूप में झूठी स्क्रॉल निर्धारित करने की आवश्यकता: textView.isScrollEnabled = false textView.textContainer.lineBreakMode = .byTruncatingTail – Tinkerbell

1

आप उपयोगकर्ता से पाठ को देखने के सामग्री को संपादित करने की जरूरत नहीं है देखें और आप केवल सामग्री प्रदर्शित कर रहे हैं, तो UILabel का उपयोग करें।

सफेद पृष्ठभूमि से ऊपर यह पाठ दृश्य और 4 लाइनों के साथ पाठ UILabel है, मुझे लगता है कि आप इस तरह कुछ लागू करने की कोशिश कर रहे हैं।

केवल लाइन ब्रेक मोड को "ट्रंकेट टेल" में बदलें और अपनी इच्छा के अनुसार लाइनों की संख्या सेट करें।

enter image description here

enter image description here

संबंधित मुद्दे