简单来说,就是直接将字符串转化为html字符,然后让textView显示。
import android.app.Activity;
import android.os.Bundle;
import android.text.Html;
import android.widget.TextView;
public class AndroidFronColorTest extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text = (TextView)findViewById(R.id.testTextView);
String source = "这只是一个测试,测试<u>下划线</u>、<i>斜体字</i>、<font color='red'>红色字</font>的格式";
text.setText(Html.fromHtml(source));
}
}
方法二:
import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.text.Html; import android.text.Spannable; import android.text.style.BackgroundColorSpan; import android.text.style.StyleSpan; import android.widget.EditText; import android.widget.TextView; public class AndroidFronColorTest extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView htmlFormateTextView = (TextView)findViewById(R.id.testTextView); String source = "这只是一个测试,测试<u>下划线</u>、<i>斜体字</i>、<font color='red'>红色字</font>的格式"; htmlFormateTextView.setText(Html.fromHtml(source)); EditText et = (EditText) findViewById(R.id.textView); Spannable sp = (Spannable) et.getText(); sp.setSpan(new BackgroundColorSpan(Color.RED), 0, 5, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); sp.setSpan(new StyleSpan(android.graphics.Typeface.BOLD_ITALIC), 6, 11, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); } }