我的目标是创建一个自动表单生成器,以便用户可以向屏幕添加控件。控件必须具有不同的宽度。
示例:
用户可以添加将使用屏幕宽度的EditText
,并在CheckBox
之后添加EditText
,EditText
位于{{1}}下方。并且还可以添加一个按钮或微调器,它将使用屏幕的其余宽度。用户可以完成所有需要的控制。
我如何实现这一目标?
答案 0 :(得分:0)
您可以使用TableLayout而不是gridview,它具有多个TableRow元素。
有趣的是,列的宽度由列中最宽元素的宽度定义。
您可以查看TableLayout documentation以获取更多信息。
答案 1 :(得分:0)
有许多方法可以实现,例如TableLayout
,也可以使用大量嵌套布局。
TableLayout
方式可能是实现您所需要的最佳和最简单的方法。
如果您想根据屏幕宽度动态更改布局,有两种方法。
方法1 以编程方式创建布局,而不是使用xml布局文件。通过这种方式,您可以进行计算并即时更改内容。
方法2 这可能是我这样做的方式。包括不同的屏幕密度,方向和大小的不同布局文件。