Android 4.1中ListView的一个TextView中的不同颜色

时间:2014-01-12 14:07:16

标签: android listview

我在ListView中有两个TextView,通过SimpleAdapter绑定数据,我想在单个TextView中显示不同的颜色,我使用Html.fromHtml,但样式无法工作,所以请帮助..

simpleAdapter = new SimpleAdapter(NewsListActivity.this, list, R.layout.list_item, new String[] { "title", "source" }, new int[] { R.id.tvTitle, R.id.tvSource });
listview.setAdapter(simpleAdapter); 

ArrayList<Map<String, Object>> list= new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
map.put("title", Html.fromHtml("<u>it's an another day.</u>"));
map.put("source", Html.fromHtml("<font color=#ffcc00>bbc news</font>"));
list.add(map);

2 个答案:

答案 0 :(得分:2)

您必须实现自定义ListViewAdapter。在getView()中,您可以实例化自己的行布局并设置文本颜色。

可以找到有关自定义适配器的信息,例如在这里:http://www.vogella.com/tutorials/AndroidListView/article.html

答案 1 :(得分:0)

由于@FD建议您需要一个包含TextView的自定义ListView,然后在该文本视图中,您可以使用下面的代码使用不同颜色的句子。

textView.setText(Html.fromHtml("<font color='red'>First line</font><br/><font color='blue'>Second line</font>"));