晚上好,
我正在尝试将我的文本包装在一个图像视图周围,就像问题在这里提出的那样:
在景观中。
但我不希望在 HTML / CSS 中这样做。另外,这个问题是 2 岁。我希望有人能解决这个问题。
此外,我希望将我的纵向视图与文本视图下的 img 视图保持一致,即不换行。
谁能帮我?
晚上好,
我正在尝试将我的文本包装在一个图像视图周围,就像问题在这里提出的那样:
在景观中。
但我不希望在 HTML / CSS 中这样做。另外,这个问题是 2 岁。我希望有人能解决这个问题。
此外,我希望将我的纵向视图与文本视图下的 img 视图保持一致,即不换行。
谁能帮我?
我可以想到一个解决方法,从以前的TextView
格式问题中考虑,最好的方法是拥有一个,例如,RelativeLayout
在其中放置 3 个单独的视图。它将代表TextView
图像ImageView
旁边的那个,文本旁边的本身,然后是TextView
第一个文本下的最后一个,但带有layout_width="match_parent"
. 没有其他方法可以用TextView
or来做到这一点ImageView
。
编辑:
如果您非常想使用 1 TextView,我相信您可以做的唯一其他解决方法,我建议您使用SpannableStringBuilder
with SpannableString
。出于特定原因,我最初并没有给你这个选项。如果您返回您在问题上发布的链接,其中一个答案说他们找到了答案。我相信那个人与一个好的资源相关联,但他们对你的需求是错误的。使用时SpannableStringBuilder
,您实际上是在创建一个字符串,该字符串可以将单个字符串的多个不同版本合并为一个,例如单个字符串上的 3 种不同颜色,或具有 3 种不同大小的字符串,全部合为一个TextView
。喜欢你需要的。
现在链接谈到放置图像并让文本很好地环绕它,但它不是那么简单,而且那个例子不是你需要的。你可以做的TextView
就是在你知道图像将在右边的前几行之后添加换行符,然后不要在图像之后这样做。但问题是它仍然需要进入RelativeLayout
. 但是,您只需要一个而不是两个 TextView。只需将 TextView 放在父对象的左上角,将 ImageView 放在父对象的右上角。这模拟了一个floating
元素。但我认为这样做比它的价值更麻烦。这确实是因为您必须进行计算才能确定在哪里放置换行符等。最好使用两个TextView
s 在其中使它看起来像你需要的。所以在我看来,不要使用SpannableStringBuilder
,但如果你不介意试图找出所有的间距,那确实可以为你提供一个 TextView 所需的东西。