我有一个进度对话框,我想显示如下文本消息:
- 下载中
- 解压中
我能否将“1. 下载中”显示为绿色,“2. 解压中”显示为红色?我的代码如下:
mProgressDialog.setMessage("1. Downloading \n 2. Decompressing");
我有一个进度对话框,我想显示如下文本消息:
我能否将“1. 下载中”显示为绿色,“2. 解压中”显示为红色?我的代码如下:
mProgressDialog.setMessage("1. Downloading \n 2. Decompressing");
看一下这段代码。
final SpannableStringBuilder sb = new SpannableStringBuilder("your text here");
final ForegroundColorSpan fcs = new ForegroundColorSpan(Color.rgb(158, 158, 158));
// Span to set text color to some RGB value
final StyleSpan bss = new StyleSpan(android.graphics.Typeface.BOLD);
// Span to make text bold
sb.setSpan(fcs, 0, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
// Set the text color for first 4 characters
sb.setSpan(bss, 0, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
// make them also bold
yourTextView.setText(sb);
我认为您可以在设置消息中使用HTML- 对于Alert和text视图有效- 我没有尝试过progress对话框,但可以尝试。以下是一些代码,可供参考 - 只需根据您的要求进行修改即可。
基本上
在您的strings.xml文件中
<string name="downloading"><![CDATA[<font color="green">1.Downloading</font><br/>]]></string>
<string name="decompressing"><![CDATA[<font color="red">2.Decompressing</font><br/>]]></string>
并调用
mProgressDialog.setMessage(Html.fromHtml(getString(R.string.downloading))+""+ Html.fromHtml(getString(R.string.decompressing)));