0

伙计们,

在我的社交网络应用程序中,单行消息来自不同的用户。当消息进来时,我需要在我们的 UI 中将它们显示为一行,显示时间、用户和消息行。所有 3 个字段都需要以不同的颜色着色。

我尝试使用 TextView 但遇到了问题。由于我需要各种颜色,我想到了使用 SpannableString,但问题是 TextView.Append 不支持 SpannableString 作为参数。

我的另一个想法是在每一行进入时构建 html 样式文本。

我想知道我是否忽略了某些东西。也许有更好的用户控制或更好的方法来实现我的目标。

预先感谢您的帮助。

问候,
彼得

4

2 回答 2

0

您应该使用三个不同的文本字段,将它们嵌套在使用列的表格布局或相对布局中。这样,无论长度如何,它们都会自动调整大小。

您还可以使用android:weight标签来控制每个人占用多少空间。

原因是通常它在数据结构中的每个字段都有 1 个标签。根据 MVC 软件设计模式。

于 2013-09-27T05:21:08.183 回答
0

使用Html并在标签的帮助下<font color><font/>,您可以设置不同颜色的单个文本@

 String result="<font color=color_code>First Textview</font> <font color=color_code>Second Textview</font><font color=color_code>Third TextView</font>";

textview.setText(Html.fromHtml(result));
于 2013-09-27T05:22:15.613 回答