2009-07-05 10 views
5

आईफोन में लगभग हर जगह, आप टेक्स्ट टाइप कर सकते हैं और ओएस टेक्स्ट के हिस्से को हाइपरलिंक्स (उदाहरण के लिए फोन नंबर, ईमेल पते) के रूप में पहचान लेगा। हालांकि मैंने इसे अपने ऐप में UILabel के साथ परीक्षण किया और यह काम नहीं करता है। मैं इसे कैसे सक्रिय करूं?UILabel में हाइपरलिंक्स (फोन नंबर/ईमेल पते इत्यादि) को पार्स और दिखाने के लिए कैसे?

क्या आईफोन एसडीके इस कार्यक्षमता को बॉक्स से बाहर प्रदान करता है या क्या मुझे खुद को पार्सिंग तर्क करना है (जो बहुत काम है)?

+0

मुझे लगता है कि UILabel एक बहुत आदिम वर्ग है - काफी यह सिर्फ लागू किया कुछ फोंट के साथ पाठ प्रदर्शित करता है। शायद UITextField आज़माएं? –

+0

नहीं, बस इसका परीक्षण किया गया है, UITextField इसे किसी भी पार्स नहीं करता है। – erotsppa

उत्तर

16

इस प्रकार आप UITextView इस्तेमाल कर सकते हैं:

UITextView *myView = [[UITextView alloc] initWithFrame: frame]; 
myView.text = @"this is http://google.com link"; 
myView.editable = NO; 
myView.dataDetectorTypes = UIDataDetectorTypeLink; 
//cell is the TableView's cell  
[cell.contentView addSubview:myView]; 
[myView release]; 
-3

इसे UIWebView के साथ एक शॉट दें।

+1

क्या एक स्क्रीन में बहुत सारे UIWebView रखना उचित है? इस नियंत्रण को तालिका में कई बार डुप्लिकेट किया जाएगा – erotsppa

0

Three20 प्रोजेक्ट के तहत स्टाइल लेबल को देखना चाहते हैं।

+0

जो मैं स्रोत में देख सकता हूं, जो विभिन्न शैलियों के साथ पाठ प्रस्तुत करता है लेकिन लिंक प्रस्तुत करने के बारे में कुछ भी नहीं करता है। –

+0

यदि आप TTCatalog नमूना कोड चलाते हैं, तो "स्टाइल लेबल" के अंतर्गत एक अनुभाग है जो दिखाता है कि यूआरएल स्वचालित रूप से लाइव लिंक में परिवर्तित हो जाता है। स्टाइल सीएसएस के माध्यम से नियंत्रित किया जा सकता है। UIWebView की तुलना में यह बहुत हल्का वजन है। इसके अलावा, "टेबल सेल" के अंतर्गत एक बाहरी लिंक सेल है जो बाहरी यूआरएल को आमंत्रित करता है। – Ramin

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