3

晚上好,

我正在尝试将我的文本包装在一个图像视图周围,就像问题在这里提出的那样:

Textview环绕视图

在景观中。

但我不希望在 HTML / CSS 中这样做。另外,这个问题是 2 岁。我希望有人能解决这个问题。

此外,我希望将我的纵向视图与文本视图下的 img 视图保持一致,即不换行。

谁能帮我?

4

1 回答 1

0

我可以想到一个解决方法,从以前的TextView格式问题中考虑,最好的方法是拥有一个,例如,RelativeLayout在其中放置 3 个单独的视图。它将代表TextView图像ImageView旁边的那个,文本旁边的本身,然后是TextView第一个文本下的最后一个,但带有layout_width="match_parent". 没有其他方法可以用TextViewor来做到这一点ImageView

编辑:

如果您非常想使用 1 TextView,我相信您可以做的唯一其他解决方法,我建议您使用SpannableStringBuilderwith SpannableString。出于特定原因,我最初并没有给你这个选项。如果您返回您在问题上发布的链接,其中一个答案说他们找到了答案。我相信那个人与一个好的资源相关联,但他们对你的需求是错误的。使用时SpannableStringBuilder,您实际上是在创建一个字符串,该字符串可以将单个字符串的多个不同版本合并为一个,例如单个字符串上的 3 种不同颜色,或具有 3 种不同大小的字符串,全部合为一个TextView。喜欢你需要的。

现在链接谈到放置图像并让文本很好地环绕它,但它不是那么简单,而且那个例子不是你需要的。你可以做的TextView就是在你知道图像将在右边的前几行之后添加换行符,然后不要在图像之后这样做。但问题是它仍然需要进入RelativeLayout. 但是,您只需要一个而不是两个 TextView。只需将 TextView 放在父对象的左上角,将 ImageView 放在父对象的右上角。这模拟了一个floating元素。但我认为这样做比它的价值更麻烦。这确实是因为您必须进行计算才能确定在哪里放置换行符等。最好使用两个TextViews 在其中使它看起来像你需要的。所以在我看来,不要使用SpannableStringBuilder,但如果你不介意试图找出所有的间距,那确实可以为你提供一个 TextView 所需的东西。

于 2012-08-09T02:27:50.140 回答