2010-07-11 11 views
6

स्टार्टर्स के लिए, मैं एंड्रॉइड/जावा डेवलपमेंट में एक सी ++/क्यूटी डेवलपर कूद रहा हूं, इसलिए कृपया मुझे कुछ भी पता न मानें। :) तो, मेरे पास स्क्रॉलव्यू में निहित टेक्स्टव्यू के साथ एक एप्लिकेशन है। टेक्स्टव्यू में निहित पाठ मेरे वेब सर्वर एप्लिकेशन से वेब क्वेरी का परिणाम है। क्वेरी के आधार पर, पाठ बहुत लंबा हो सकता है। मैं उस पाठ पर एक खोज सुविधा को कार्यान्वित करना चाहता हूं जहां उपयोगकर्ता खोज करने के लिए कुछ टेक्स्ट स्ट्रिंग में प्रवेश करता है, और यदि पाठ स्ट्रिंग मिलती है, तो स्क्रॉलव्यू टेक्स्टव्यू को स्क्रॉल करेगा ताकि यह सुनिश्चित किया जा सके कि प्रविष्ट किया गया सबस्ट्रिंग दिखाई दे रहा है, और मैं टेक्स्ट को हाइलाइट करना चाहता हूं। मुझे लगता है कि मुझे टेक्स्ट सबस्ट्रिंग को हाइलाइट करना है, मुझे पता है कि टेक्स्टव्यू में एक विशिष्ट लाइन नंबर पर स्क्रॉल करने के लिए स्क्रॉलव्यू को कैसे बताना है, लेकिन मेरे जीवन के लिए, मैं यह नहीं समझ सकता कि किस लाइन नंबर को पता लगाना है मेरी सबस्ट्रिंग की गारंटी देने के लिए स्क्रॉल करें। हां, मैं टेक्स्ट व्यू से पूछना चाहता हूं कि मुझे लाइन नंबर दें जो सबस्ट्रिंग पहले होता है। आखिरकार, मैं एक खोज को भी लागू करना चाहता हूं जो सबस्ट्रिंग की अगली घटना पर जाता है। फ़ायरफ़ॉक्स में ढूँढें सुविधा की तरह। किसी भी मदद का बहुत स्वागत है। अग्रिम में धन्यवाद।पाठ के एक विशिष्ट सबस्ट्रिंग को स्क्रॉलव्यू में स्क्रॉलिंग व्यूव्यू

उत्तर

8

आपको टेक्स्ट में सबस्ट्रिंग की स्थिति को खोजने की ज़रूरत है, उदा। String.indexOf() के साथ। एक बार जब आप उस स्थिति को जानते हैं, तो आप Layout.getLineForOffset() फ़ंक्शन का उपयोग करके टेक्स्ट व्यू में सही पंक्ति देख सकते हैं:

int offset=myString.indexOf("search string"); 
int line = myTextView.getLayout().getLineForOffset(offset); 
संबंधित मुद्दे