Android ListView字符串样式

Android ListView字符串样式,android,listview,Android,Listview,我想知道是否可以为列表视图中使用的字符串添加一些样式?我曾经尝试过使用转义码进行html格式化,我似乎得到的只是显示的代码,而不是我想要的。我希望LISTVIEW中的字符串是粗体的,然后换行不粗体,如果可能的话,使用较小的字体。我目前有粗体代码,但这似乎没有做任何事情,也没有给我任何格式错误 ListView menuList = (ListView) findViewById(R.id.ListView_Menu); String[] items = { getResources()

我想知道是否可以为列表视图中使用的字符串添加一些样式?我曾经尝试过使用转义码进行html格式化,我似乎得到的只是显示的代码,而不是我想要的。我希望LISTVIEW中的字符串是粗体的,然后换行不粗体,如果可能的话,使用较小的字体。我目前有粗体代码,但这似乎没有做任何事情,也没有给我任何格式错误

ListView menuList = (ListView) findViewById(R.id.ListView_Menu);
String[] items = 
{ 
   getResources().getString(R.string.menu_item_one),
   getResources().getString(R.string.menu_item_two),
   getResources().getString(R.string.menu_item_three),
   getResources().getString(R.string.menu_item_four),
   getResources().getString(R.string.menu_item_five),
   getResources().getString(R.string.menu_method_six), 
 };
 ArrayAdapter<String> adapt = new ArrayAdapter<String>(this, 
   R.layout.menu_item, items);
 menuList.setAdapter(adapt);
ListView菜单列表=(ListView)findViewById(R.id.ListView_菜单);
字符串[]项=
{ 
getResources().getString(R.string.menu\u item\u one),
getResources().getString(R.string.menu\u item\u two),
getResources().getString(R.string.menu\u item\u three),
getResources().getString(R.string.menu\u item\u four),
getResources().getString(R.string.menu\u item\u five),
getResources().getString(R.string.menu\u method\u six),
};
ArrayAdapter adapt=新的ArrayAdapter(此,
R.布局、菜单项(项目);
菜单列表设置适配器(自适应);
这些线看起来像这样

<string name="menu_item_one"><b>This should be BOLD</b>\nSshould should not be be bold and smaller font if possible</string>
<string name="menu_item_two"><b>This should be BOLD</b>\nSshould should not be be bold and smaller font if possible</string>
<string name="menu_item_three"><b>This should be BOLD</b>\nSshould should not be be bold and smaller font if possible</string>
<string name="menu_item_four"><b>This should be BOLD</b>\nSshould should not be be bold and smaller font if possible</string>
<string name="menu_item_five"><b>This should be BOLD</b>\nSshould should not be be bold and smaller font if possible</string>
<string name="menu_item_six"><b>This should be BOLD</b>\nSshould should not be be bold and smaller font if possible</string>
应为粗体\n如果可能,不应为粗体和较小字体
应为粗体\n如果可能,不应为粗体和较小字体
应为粗体\n如果可能,不应为粗体和较小字体
应为粗体\n如果可能,不应为粗体和较小字体
应为粗体\n如果可能,不应为粗体和较小字体
应为粗体\n如果可能,不应为粗体和较小字体

尝试改用
getResources().getText()
,并将其他变量设为
CharSequence[]
ArrayAdapter
。这应该一直保留XML声明中的格式,直到在每个列表项的视图上设置文本为止

为了清楚起见,我以这种方式重写了您的代码示例:

ListView menuList = (ListView) findViewById(R.id.ListView_Menu);
CharSequence[] items = 
{ 
   getResources().getText(R.string.menu_item_one),
   getResources().getText(R.string.menu_item_two),
   getResources().getText(R.string.menu_item_three),
   getResources().getText(R.string.menu_item_four),
   getResources().getText(R.string.menu_item_five),
   getResources().getText(R.string.menu_item_six), 
};
ArrayAdapter<CharSequence> adapt = new ArrayAdapter<CharSequence>(this, R.layout.menu_item, items);
menuList.setAdapter(adapt);
ListView菜单列表=(ListView)findViewById(R.id.ListView_菜单);
CharSequence[]项=
{ 
getResources().getText(R.string.menu\u item\u one),
getResources().getText(R.string.menu\u item\u two),
getResources().getText(R.string.menu\u item\u three),
getResources().getText(R.string.menu\u item\u four),
getResources().getText(R.string.menu\u item\u five),
getResources().getText(R.string.menu\u item\u six),
};
ArrayAdapter adapt=新的ArrayAdapter(此,R.layout.menu_项,项);
菜单列表设置适配器(自适应);

希望有帮助

问问题时请不要大声喊叫。这会使他们更难阅读,也不会让你更快地得到答案。这也非常烦人,意味着必须有人编辑你的帖子才能删除它们。此外,在发布问题时,请使用问题下方显示的预览来检查代码格式等内容。谢谢。我不知道CharSequence[]去哪儿了。我希望能得到一些指导。TIAI已经用适当的修改重写了您的示例,并且删除了我的其他建议,因为我已经测试了这段代码,并且它可以工作。