spannable on android for textView

56,721

Solution 1

I want to make the font bold and ıtalic with spannable

for this u will need to make o.content text as SpannableString then set it to TextView as :

SpannableString spannablecontent=new SpannableString(o.content.toString());
spannablecontent.setSpan(new StyleSpan(android.graphics.Typeface.BOLD_ITALIC), 
                         0,spannablecontent.length(), 0);
// set Text here
tt.setText(spannablecontent);

EDIT : you can also use Html.fromHtml for making text Bold and Italic in textview as :

tt.setText(Html.fromHtml("<strong><em>"+o.content+"</em></strong>"));

Solution 2

The easy way to create a spannable text bold and italic to set into your TextView is using the method Html.fromHtml():

and using the html elements <b> and <i>

myTextView.setText(Html.fromHtml("<b><i>my text bold and italic!</i></b>"));

or the html elements <strong> and <em>

   myTextView.setText(Html.fromHtml("<strong><em>my text bold and italic!</em></strong>"));
Share:
56,721
baran
Author by

baran

Updated on June 13, 2020

Comments

  • baran
    baran about 4 years
    Tweet o = tweets.get(position);
    
    TextView tt = (TextView) v.findViewById(R.id.toptext);
    //TextView bt = (TextView) v.findViewById(R.id.bottomtext);         
    
    EditText bt =(EditText)findViewById(R.id.bottomtext);
    bt.setText(o.author);
    Spannable spn = (Spannable) bt.getText();
    spn.setSpan(new StyleSpan(android.graphics.Typeface.BOLD_ITALIC)
    , 0, 100, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);  
    
    //bt.setText(o.author);    
    tt.setText(o.content);
    

    I'm setting twitter data in my Android application. I want to make the font bold and italic using Spannable but it does not work, giving an error. How can I do it?