2011-07-08 33 views
8

很少的HTML标签中的strings.xml文件HTML格式的标签可以正确地呈现,因此,例如,下面的文本资源会以粗体显示:在对话框忽略

<string name="example_text"><b>This text is bold</b></string> 

但是,如果在自定义对话框中使用相同的文本,格式将被忽略。

有谁知道如何格式化一个对话框中的滚动视图的文本的一部分?

回答

8

您可以通过在对话框中使用的WebView的HTML格式:

的strings.xml

<string name="example_text" formatted ="false"><![CDATA[ <strong> Example Text </strong> ]]></string> 

的Java

String string = getString(R.string.example_text); 
WebView wv = new WebView (getBaseContext()); 
wv.loadData(string, "text/html", "utf-8"); 
wv.setBackgroundColor(Color.WHITE); 
wv.getSettings().setDefaultTextEncodingName("utf-8"); 
new AlertDialog.Builder(this) 
.setCancelable(false) 
.setView(wv) 
.setNeutralButton("OK", new DialogInterface.OnClickListener(){ 
    @Override 
    public void onClick(DialogInterface dialog, int which) { 
     dialog.cancel(); 

    } 

    }) 
.show(); 
+0

这工作得很好,谢谢。字体颜色也可以通过添加标签进行更改。 –

+0

伟大的解决方案!感谢名单 – Komi