1

我正在创建一个 iPhone 应用程序,我需要能够动态创建一个用户可以输入数据的“表单”。例如,假设我正在制作 Dominoes Pizza 应用程序,您可以在其中通过应用程序内的“表单”订购比萨饼。此表单具有不同的部分标题(比萨、意大利面、沙拉等)不同的“单选按钮”,例如选项(肉比萨、奶酪比萨等)和一些条件选项(例如,您可能只看到比萨的选项如果您选择了比萨复选框,则添加配料)。我的应用程序将与此类似,具有许多复选框、单选按钮、下拉菜单等的表单。

我的问题是存储用于动态创建此类表单的信息的最佳方式是什么?我的要求是易于更改(比如说奶酪比萨现在要多花 2 美元),并且应该能够由编程经验有限的人更改。

我的第一直觉是使用这样的 XML:

<Item>Pizza</Item>
    <Type>Dropdown List</Type>
    <Cost> $5.0 </Cost>
    <Option> Cheese Pizza </Option>
    <Option> Pepperoni Pizza </Option>
    <Option> Meat Pizza </Option>
<Item>Salad</Item>
    <Type>Radio Buttons</Type>
    <Cost> $2.0 </Cost>
    <Option> Yummy Salad </Option>
    <Option> Icky Salad </Option>

在我的应用程序中有这个文件,然后我可以解析它,每当我看到“单选按钮”类型时,创建一个单选按钮,每当我看到“下拉列表”时创建一个下拉列表。唯一的问题是,如果用户已经选择了比萨,则可能难以做出条件选项,例如仅显示沙拉项目。

这是最适合用于这种情况的技术吗?XML?请注意,我不希望它严格地成为 Web 应用程序,因为我希望能够使用诸如“UISegmentedControl”之类的 Objective-C 对象。

4

1 回答 1

2

是的,XML 绝对是一个不错的选择。您还应该考虑使用 JSON。在您的 Web 服务上生成信息,使用 JSON 对其进行编码,在应用程序中下载 JSON 字符串,然后解析并保存该字符串。

一旦您在应用程序中获得数据,我将使用 aUITableView来动态创建表单。a 的数据源UITableView是 a NSArray,这很容易从 XML 或 JSON 解析中获得。

于 2012-08-15T12:14:36.823 回答