web-dev-qa-db-fra.com

extensible sur Android pour textView

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);

Je configure des données Twitter dans mon Android. Je veux mettre la police en gras et en italique en utilisant Spannable mais cela ne fonctionne pas, ce qui donne une erreur. Comment puis-je le faire?

36
baran

Je veux rendre la police audacieuse et ıtalique avec spannable

pour cela, vous devrez faire o.content texte comme SpannableString puis définissez-le sur TextView comme:

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: vous pouvez également utiliser Html.fromHtml pour rendre le texte en gras et en italique dans la vue de texte comme:

tt.setText(Html.fromHtml("<strong><em>"+o.content+"</em></strong>"));
75
ρяσѕρєя K

La manière simple de créer un spannable texte bold et italic à mettre dans votre TextView est d'utiliser la méthode Html.fromHtml():

et en utilisant les éléments html <b> et <i>

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

ou les éléments html <strong> et <em>

   myTextView.setText(Html.fromHtml("<strong><em>my text bold and italic!</em></strong>"));
2
Jorgesys