2011-06-07 18 views
22

में किसी विशिष्ट पंक्ति पर टेक्स्ट कैसे प्राप्त करूं मेरे पास TextView है जो एक्स लाइन लंबी है। लाइन 3 पर कहने वाले पाठ को मैं कैसे प्राप्त करूं?मैं टेक्स्ट व्यू

उदाहरण: मैं इस TextView

है इस लाइन 1

है और इस लाइन 2

है और इस लाइन 3

है मैं कम से String प्राप्त करने में सक्षम होना चाहता हूँ लाइनों पर String प्राप्त करने जैसे इन लाइनों में से कोई भी वापस लौटाएगा "और यह लाइन 3 है"। लाइन ब्रेक के लिए खोज करना मुझे आवश्यक समाधान नहीं है, क्योंकि यह टेक्स्ट रैपिंग को ध्यान में रखता नहीं है।

उत्तर

29

आप textView.getLayout()। GetLineStart (int line) और getLineEnd टेक्स्ट में वर्ण ऑफ़सेट खोजने के लिए उपयोग कर सकते हैं।

फिर आप textView.getText() का उपयोग कर सकते हैं। Substring (start, end) - या बाद में यदि आप स्वरूपण/आदि के लिए स्पैनबेल का उपयोग कर रहे हैं।

+1

धन्यवाद! मुझे नहीं पता था कि 'टेक्स्ट व्यू' का अपना विशेष लेआउट था, हालांकि यह समझ में आता है। यह वही था जो मुझे चाहिए था। –

+0

बहुत बहुत धन्यवाद। आपके उत्तर ने मेरा दिन बचाया! –

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