我正在尝试构建一个复杂的表单,其中几乎所有元素都是可选的。它从一个字段和一个“添加元素”按钮开始。当您单击添加时,表单会显示Spinner
您可以添加到表单中的元素类型(位置、照片、详细说明、“现在”以外的时间戳等)。当您选择一个项目时,它将启动一个Activity
,并且每个项目都有一个不同的关联Activity
。
此外,每个选项都会有几位数据,以Activity
某种方式“与”一起存储会很好:
- 图标和显示的名称
Spinner
- 用于将数据存储在数据库中的密钥(以及传递给 Web 服务)
- 如何在原始表单上显示结果的布局(即照片的缩略图、位置的纬度/经度等)
我正在考虑一组类,它们都扩展了一个抽象FormElement
类,并且对于上述每个额外的数据都有静态元素。Resources
(这个解决方案的另一个问题是在静态环境中有多少痛苦。)
我怎样才能使它尽可能干净和可维护?我真的不喜欢编辑五个不同的文件来为这个表单添加一种新类型的元素。(主要是因为我可以保证我会错过一个并花几个小时追查 unbugs。)