Android 更改字符串数组中的颜色
我有一个列表视图和一些文字现在我想改变俱乐部在粗体或成本:1个GP,损害:1D6在灰色是可能的Android 更改字符串数组中的颜色,android,string,colors,Android,String,Colors,我有一个列表视图和一些文字现在我想改变俱乐部在粗体或成本:1个GP,损害:1D6在灰色是可能的 String[] ad = {"Simple Melee Weapons", "Club\nCost: 1 GP, Damage: 1D6"} 尝试多搜索一点。Stack拥有一切,这个问题已经被问了一百万次。如果没有为此创建的布局,这很难回答,但要回答您的问题,您可以在字符串数组中使用Spanable或HtmlChange color,这是不可能的,因为字符串数组不是具有可见界面的对象。但是你可以在
String[] ad = {"Simple Melee Weapons", "Club\nCost: 1 GP, Damage: 1D6"}
尝试多搜索一点。Stack拥有一切,这个问题已经被问了一百万次。如果没有为此创建的布局,这很难回答,但要回答您的问题,您可以在字符串数组中使用Spanable或HtmlChange color,这是不可能的,因为字符串数组不是具有可见界面的对象。但是你可以在文本视图中更改子字符串的颜色。当然,我可以在简单列表项1的文本中使用它。您可以在任何字符串上使用它。但是,如果您想在具有默认适配器的listview中使用它,恐怕您不能。您必须创建自己的适配器实现,以便根据需要修改列表元素的外观。不过,我建议您尝试使用recyclerview而不是listview。因为它自己实现了ViewHolder模式,而且它的使用非常简单,所以它的性能提高了十倍。如果这个答案是正确的,请标记为:@LuigiDeSimone如果这是你问题的答案,我认为是,请标记为正确。
Spannable span = new SpannableString(ad[1]);
span.setSpan(new ForegroundColorSpan(Color.GRAY), 0, ad[1].length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
span = new SpannableString(ad[0]);
StyleSpan boldSpan = new StyleSpan(Typeface.BOLD);
span .setSpan(boldSpan, 0, ad[0].length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);