मेरे पास टेक्स्टव्यू है जिसे मुझे लिंक करने की आवश्यकता है। यहाँ मैं क्या कर रहा हूँ है ..एंड्रॉइड: Linkify TextView
TextView text = (TextView) view.findViewById(R.id.name);
text.setText("Android...Update from Android");
Pattern pattern = Pattern.compile("Android");
String scheme = "www.android.com";
Linkify.addLinks(text, pattern, scheme);
पाठ-व्यू पाठ "एंड्रॉयड ... अद्यतन Android से" के साथ सही ढंग से प्रदर्शित किया जाता है, लेकिन मैं दो समस्याओं का सामना कर रहा हूँ।
1) मेरी टेक्स्ट स्ट्रिंग में स्ट्रिंग "एंड्रॉइड" के दो उदाहरण हैं। तो, दोनों पाठ को लिंक किया गया है। मैं केवल पहली घटना को लिंक करना चाहता हूं। मुझे इसे किस प्रकार करना चाहिए?
2) जब मैं लिंकफ़ी टेक्स्ट पर क्लिक करता हूं, तो यह ब्राउज़र खोलता है, लेकिन यूआरएल अजीब है। यूआरएल खोलने की कोशिश करता है वह "www.comandroid" है। मुझे नहीं पता कि यहाँ क्या गलत हो रहा है। यूआरएल में पाठ "एंड्रॉइड" बदल दिया जा रहा है। पाठ को लिंक करते समय मैं कुछ गलत कर रहा हूं।
किसी भी मदद की अत्यधिक सराहना की जाएगी।
समस्या हल जैसा होगा। पहली समस्या का समाधान इयान लेस्ली द्वारा प्रदान किया गया उत्तर है। दूसरी समस्या का समाधान निम्नानुसार है। एपीआई "Linkify.addLinks" का व्यवहार ऐसा है कि, वह उस स्ट्रिंग को जोड़ता है जिसे आप यूआरएल के अंत तक जोड़ना चाहते हैं। पूर्व के लिए .. यदि आप "एंड्रॉइड" टेक्स्ट को "www.android.com" से जोड़ना चाहते हैं .. अंतिम यूआरएल "www.android.comAndroid" है जो मुझे चाहिए। इसलिए मैंने सार्वजनिक स्थिर अंतिम शून्य का उपयोग किया ऐडलिंक्स (टेक्स्ट व्यू टेक्स्ट, पैटर्न पी, स्ट्रिंग स्कीम, लिंकिफाइ.मैचफिल्टर मैचफिल्टर, लिंकिफा। ट्रांसफॉर्मफिल्टर ट्रांसफॉर्मफिल्टर) –
ट्रांसफॉर्मफिल्टर ट्रांसफॉर्मफिल्टर = नया ट्रांसफॉर्मफिल्टर() {पब्लिक फाइनल स्ट्रिंग ट्रांसफॉर्म यूआरएल (फाइनल मैचर मैच, स्ट्रिंग यूआरएल) { रिटर्न ""; } }; एपीआई ट्रांसफॉर्मर एक शून्य स्ट्रिंग लौटाता है। तो मेरा अंतिम यूआरएल "www.android.com –