【问题标题】:Adding TextViews separated by space添加以空格分隔的 TextView
【发布时间】:2016-03-23 04:35:35
【问题描述】:

我想在一个视图中有 3 个TextViewsTextViews 必须一个接一个地水平分隔,例如 10dp 边距。假设如果一个TextView 的内容超过了一行,那么剩余的内容连同剩余的TextViews 应该像使用wrap_content 时一样移到下一行。我不希望TextViews 占用相等的空间.它应该只根据其内容占用空间

【问题讨论】:

  • 你到底在问什么?
  • 用逗号分隔?
  • 你试过什么?
  • 你能把你拥有的东西张贴出来
  • 问题本身比较混乱,请把问题写清楚。

标签: android textview


【解决方案1】:

我想你想要FlowLayoutFlowLayout:

扩展的线性布局,当当前行中没有位置时包装其内容。

在 Gradle 中将其添加为依赖项:compile 'org.apmem.tools:layouts:1.10@aar' 并在 xml 中声明:

<org.apmem.tools.layouts.FlowLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
</org.apmem.tools.layouts.FlowLayout>

【讨论】:

  • 那么除了使用库使事情复杂化之外,没有其他简单的方法可以做到这一点??
  • @Jas AFAIK,没办法。您可以尝试创建自己的Custom ViewGroup,但我认为它更复杂。使用上面的FlowLayout,您可以像平常一样添加您的视图LinearLayout,仅此而已。
【解决方案2】:

我建议使用带有 1 个文本视图而不是 3 个文本视图的字符串生成器 - 它会更直接,涉及的视图更少(成本更低)并且更易于维护

编辑:如果您以后需要访问该文本视图的部分内容,您可以将部分文本视图文本存储在字符串字段中。这样,您的视图层次结构将很简单,您仍然可以单独访问文本粒子

伪代码示例: string1 = "土豆"; string2 = "优于"; string3 = "黄瓜"; textview.setText(string1 + string2 + string3);

【讨论】:

  • 我知道。那将是直截了当的。但我想稍后分别从这 3 个 TextView 中获取数据。这就是为什么
  • @Jas 你可以拆分它并获取字符串
  • 那会很复杂。如果我使用 3 个 TextView,我可以简单地使用 getText() 方法阅读文本
【解决方案3】:

对线性布局使用 weightSum

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="3"
android:orientation="horizontal"
>

您可以将每个TextView的layout_weight设置为1,将LinearLayout中的weightSum设置为3来实现这一点。

<TextView
android:layout_height="wrap_content"       
android:layout_weight="1"
android:layout_width="0dp"/>

官方指南-http://developer.android.com/reference/android/widget/LinearLayout.html#attr_android:weightSum

其他教程 - http://androidtuts.weebly.com/xml-layout-weightsum-weight.html

更新:

如果您需要 3 个文本视图之间的空间,请添加“空间”视图。并根据需要设置重量。

或使用左边距或右边距

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多