问题有这个 UI 问题:
1) 我有 3 个textViews
我想在一个父视图中保存。
2)我想在尽可能少的行中填充尽可能多的项目。
3) 仅在 2 个项目之间有分隔符。
推荐算法:
获取容器的宽度获取每个项目未指定的宽度(为此,我必须创建一个自定义 textView 来覆盖onMeasure()
)。
计算并放在一边"last line remaining width"
。
如果下一个 textView 可以适合最后一行剩余宽度:
- 使最后一个分隔符可见
- 把它放在同一行并移动到下一个 textView 项目
别的:
- 打开新行
remaining width = (container's width - current item's width)
- 使最后一个分隔符不可见
- 将当前项目放在该行中(如果需要,换行)
我有两个选择:
- 使用水平线性布局的垂直线性布局。
- 使用约束布局。
我会填写一个列表列表,并通过代码填充水平线性布局。
或者通过代码填充约束布局(不太通用,我想更难)。
有没有更简单的解决方案?