在Android中实现自定义视图和/或ViewGroup(流布局)

时间:2014-05-31 17:26:08

标签: android

我试图实现类似的目标:

widget demo

所以,这是一个可以容纳任意数量的孩子的容器。每个孩子都是带边框的简单文字。儿童的宽度可能不同。我假设这部分可以通过扩展TextView小部件来实现(因为它不可点击)。这里更有趣的是这些有边框的文本视图的容器。它应该支持定期addView(child)操作,该操作根据简单规则自动对齐孩子:如果当前行中有足够的空间 - 将子项放在行中最后一项的右侧。如果没有空间 - 将孩子移到下一行。所以基本逻辑看起来与TextViewEditText非常相似:如果文本太长,我们会在几行中显示它。我的想法太过延伸RelativeLayout,但我仍然希望找到更容易的东西。

我上面描述的方案(自定义容器+自定义TextView)不是强制性的,我只是在寻找实现这一目标的方法。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

似乎我正在寻找的模式称为FlowLayout(感谢nitzanj)。它有几种实现方式:

如果您决定编写自己的版本,以下是有关编写自定义视图的有用指南: