Android TextView 个别文字字体颜色格式

来源:互联网 发布:淘宝联盟 提现 手续费 编辑:程序博客网 时间:2024/05/26 15:57

1.简单的办法,用Html来格式化字符

Code:
  1. import android.app.Activity;      
  2. import android.os.Bundle;      
  3. import android.text.Html;      
  4. import android.widget.TextView;      
  5.      
  6. public class AndroidFronColorTest extends Activity {      
  7.     @Override     
  8.     public void onCreate(Bundle savedInstanceState) {      
  9.         super.onCreate(savedInstanceState);      
  10.               
  11.         setContentView(R.layout.main);      
  12.               
  13.         TextView htmlFormateTextView = (TextView)findViewById(R.id.testTextView);      
  14.               
  15.         String source = "这只是一个测试,测试<u>下划线</u>、<i>斜体字</i>、<font color='red'>红色字</font>的格式";      
  16.        
  17.         htmlFormateTextView.setText(Html.fromHtml(source));      
  18.     }      
  19. }   

 

方法2 Spannable

Code:
  1. import android.app.Activity;      
  2. import android.graphics.Color;      
  3. import android.os.Bundle;      
  4. import android.text.Html;      
  5. import android.text.Spannable;      
  6. import android.text.style.BackgroundColorSpan;      
  7. import android.text.style.StyleSpan;      
  8. import android.widget.EditText;      
  9. import android.widget.TextView;      
  10.      
  11. public class AndroidFronColorTest extends Activity {      
  12.     @Override     
  13.     public void onCreate(Bundle savedInstanceState) {      
  14.         super.onCreate(savedInstanceState);      
  15.               
  16.         setContentView(R.layout.main);      
  17.               
  18.         TextView htmlFormateTextView = (TextView)findViewById(R.id.testTextView);      
  19.               
  20.         String source = "这只是一个测试,测试<u>下划线</u>、<i>斜体字</i>、<font color='red'>红色字</font>的格式";      
  21.        
  22.         htmlFormateTextView.setText(Html.fromHtml(source));      
  23.               
  24.         EditText et = (EditText) findViewById(R.id.textView);      
  25.      
  26.         Spannable sp = (Spannable) et.getText();      
  27.      
  28.         sp.setSpan(new BackgroundColorSpan(Color.RED), 05,      
  29.      
  30.         Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);      
  31.      
  32.         sp.setSpan(new StyleSpan(android.graphics.Typeface.BOLD_ITALIC), 611,      
  33.      
  34.         Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);      
  35.     }      
  36. }   

 

原创粉丝点击