2009-12-11 13 views
15

का उपयोग करके मैं UITableViewCellStyleValue2 शैली को दोहराने के तरीके को समझने की कोशिश कर रहा हूं ताकि विस्तार टेक्स्ट कई पंक्तियां हो - जैसा कि संपर्क ऐप में 'पता' कक्षों में देखा गया है। संपर्क ऐप की तरह, कुछ फ़ील्ड (जैसे सड़क का नाम) वैकल्पिक हैं; तो यह 4 की बजाय 3 लाइनों को दिखाएगा, अगर सड़क शून्य नहीं थी।मल्टी-लाइन UITableViewCell UITableViewCellStyleValue2 शैली

क्या मुझे एक चाल याद आ रही है, या क्या मुझे आईबी में एक कस्टम सेल बनाना है? अन्य UITableViewCellStyleValue2 कक्षों के साथ टेक्स्ट और विवरण टेक्स्ट लेबल लाइन-अप को कैसे सुनिश्चित करें?

किसी भी सुझाव के लिए धन्यवाद।

उत्तर

31

इस पाया की खोज का एक और दौर:

http://the-lost-beauty.blogspot.com/2009/11/multi-line-uitableviewcell-using.html

जल्दी यह कोशिश की, और यह काम करता है - बस फ़ॉन्ट आकार नीचे एक सा सेट करना होगा।

+3

एक समस्या यह है कि UILineBreakModeWordWrap मूल्यह्रास हुआ है। अब आपको आईओएस 6 में NSLineBreakByWordWrapping का उपयोग करना होगा। –

1

यह मुझे लगता है जैसे आपको एक कस्टम UITableCell बनाना होगा। टेक्स्ट लाइनों को सुनिश्चित करने का एकमात्र तरीका मार्जिन/टेक्स्ट चौड़ाई मानों को सही करना है, जिसे परीक्षण और त्रुटि के माध्यम से किया जा सकता है, या xScope जैसे मापने वाले टूल का उपयोग किया जा सकता है।

0

मुझे यह भी समस्या थी कि textLabel और detailTextLabel की एक अलग स्थिति थी। समाधान: detailTextLabel के लिए टेक्स्ट लेबल जैसी समान ऊंचाई का उपयोग करें (उदा। 13)

1

अपनी तालिका के लिए एक कस्टम सेल बनाएं और इसके अंदर एक UILabel और UITextView रखें। लेबल को & टेक्स्ट दृश्य को अपने एक्स, वाई पोजीशन को उस तालिका में उपयोग करने वाली अन्य कोशिकाओं से मेल करने के लिए स्थिति दें। जब भी आप लाइन ब्रेक होने की इच्छा रखते हैं, तो आप टेक्स्टव्यू के टेक्स्ट में "\ n" डालते हैं। आप की तरह कुछ का उपयोग कर TextView में लाइनों की संख्या पर निर्भर करता है TextView ऊंचाई का आकार बदलने:

CGRect frame = yourTextView.frame; frame.size.height = yourTextView.contentSize.height; yourTextView.frame = frame; return frame.size.height + 20.0; // Pad the cell's height as necessary for your applicaion

+1

सामान्य रूप से, यह परिभाषित करना मुश्किल है कि लाइन ब्रेक कहां रखना चाहिए। – Raptor