【问题标题】:textview doesn't wraps correctly?textview 没有正确换行?
【发布时间】:2018-02-13 10:00:07
【问题描述】:

我有两个水平对齐的文本视图。当第二个 TextView 变长时,它会错误地换行到下一行。我希望它从布局的开头而不是在 TextView 下方开始文本。

我尝试过流式布局,但它会将所有文本包装到底部,而不是仅包装附加文本。

我想要什么:

我想要两个 TextView 的原因是因为我正在进行拖放测验,所以当用户将答案拖到 textview 时,它会将其内容“setText(answer)”更改为答案。 感谢您的帮助 Drag and drop image

【问题讨论】:

  • 你搜索过android中的拖放吗?

标签: android android-layout textview


【解决方案1】:

我认为这是不可能的。你总是可以使用带参数的字符串来实现这一点。

例如

<string name="test_string">%1$s %2$s</string>

然后

getString(R.string.test_string, "text view one text", "text view two text")

【讨论】:

  • 问题是我应该有两个 TextView 而不是一个,因为我将以编程方式分别编辑每个。
  • 你想要的问题是 textView2 的宽度。对于同一个文本视图,您不能在一行 50 dp 和第二个 100 dp 中使用。您始终可以在类中保留两个不同的字符串值,并使用 getString() 方法添加它们。另外,如果你想让它像 2 个不同的文本视图一样在视觉上填充,你可以使用 SpannableString()。
【解决方案2】:

我不确定这是否可能。这听起来像是一种非常简单的事情的尴尬方式。

我的解决方案是拥有 1 个 TextView,并将两个字符串连接在一起,否则它们将位于单独的 TextViews 中。

【讨论】:

  • 感谢您回答 Tom,但我担心我应该有两个 TextView 是有原因的 :)
  • 出于什么目的?你能帮我理解为什么这种布局中的 2 是必要的吗?
  • 我想要两个 TextView 的原因是因为我正在进行拖放测验,所以当用户将答案拖到 textview 时,它会将其内容“setText(answer)”更改为回答。感谢您的帮助
【解决方案3】:

取两个字符串变量而不是两个 textViews 并处理它们。最后,只需连接两个字符串并将其显示在 textView 中。

为了使其具有两种不同 textView 的外观和感觉,您可以使用 html 格式或可扩展的文本。

如果您能解释实际情况,以及为什么需要两个 textView,我们或许可以帮助您更好地理解您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多