2012-09-26 11 views
8

यह उदाहरण है।बहु स्पैन करने योग्य टेक्स्ट कैसे बनाएं?

String source = "This is example text"; 
Spannable out = new SpannedString(source); 
StyleSpan boldSpan = new StyleSpan(Typeface.BOLD); 
out.setSpan(boldSpan, 1, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
out.setSpan(boldSpan, 9, 12, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

//someTextView.setText(out); 


अपेक्षित परिणाम: टी हाय रों ई xam मिसाल पाठ ("हाय" & "xam" बोल्ड कर रहे हैं)
वास्तविक परिणाम है:         यह ई xam मिसाल है पाठ (केवल अंतिम सेटस्पैन विधि और बोल्ड केवल "xam" काम करता है)


बहु स्पैन करने योग्य टेक्स्ट कैसे बनाएं? यह संभव है?
शायद समस्या स्पैन करने योग्य.SPAN_EXCLUSIVE_EXCLUSIVE ध्वज में है? धन्यवाद।

उत्तर

20

मुझे लगता है कि आपको प्रत्येक के लिए नया स्टाइलस्पैन चाहिए।

String source = "This is example text"; 
Spannable out = new SpannedString(source); 
StyleSpan boldSpan = new StyleSpan(Typeface.BOLD); 
StyleSpan boldSpan2 = new StyleSpan(Typeface.BOLD); 
out.setSpan(boldSpan, 1, 3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
out.setSpan(boldSpan2, 9, 12, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

हालांकि इसे आजमाया नहीं है।

+0

धन्यवाद। यह काम करता है :) – user1523690

+0

कोई समस्या नहीं है। सुन के अच्छा लगा। :) अगर आप मेरे समाधान से खुश हैं तो कृपया उत्तर स्वीकार करें। – MillyMonster

+0

मुझे अभी तक इस समस्या का समाधान नहीं हुआ है, मैं खुशी से प्रश्नों को देख रहा था .. लेकिन इससे मुझे भी रोक दिया होगा। – WORMSS

0

कारण यह है कि प्रत्येक बोल्ड स्पैन करने योग्य टेक्स्ट को StyleSpan द्वारा दर्शाया जाना चाहिए। आपके लिए कारण एक मूल्य के पुनर्मूल्यांकन के समान ही है।

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