需要帮助创建复杂的UITableView项目(如设置应用程序)

时间:2009-07-29 20:44:08

标签: iphone application-settings

我希望创建一个自定义设置视图,类似于设置应用程序,但可以更好地控制UI并访问某些设置(我需要锁定一些设置)。

显然,应用程序的UITableView的每一行都混合了各种UI元素。例如,“飞行模式”设置显示UISwitch,而“Wi-Fi”设置具有与公开符号('>')相邻的文本值。更复杂的是将这些设置分组。

我对我应采取的方法有一些一般性问题:

  • 似乎我需要保存设置名称,当前值,分组以及修改其值所需的UI元素类型。我想使用[NSUserDefault standardUserDefaults],但这些设置会出现在“设置”应用程序中。我猜我需要创建自己的设置 - 持久性类。

  • 最好是在代码中构建这些复杂的UI元素组合中的每一个,还是基于UITableViewCell创建一系列自定义视图并加载适当的视图?我猜测后者。

  • 某些设置要求我加载另一个视图以选择其值。假设应用程序基于实用程序模式,如果SettingsView管理导航堆栈,而不是让应用程序代理执行此操作吗?

感谢您的时间和意见。

Craig Buchanan

2 个答案:

答案 0 :(得分:4)

如果您只是想在应用中显示Settings.bundle,我建议您在http://www.inappsettingskit.com/查看InAppSettingsKit,或者至少可以使用框架作为起点。

至于你的一般问题,这是我的看法:

  • 对于持久性,我建议您使用NSPropertyListSerialization或NSDictionary的writeToFile简单地将设置的NSDictionary持久保存到App的Document文件夹中的plist文件中:原子地:

  • 我建议构建一系列自定义笔尖并在加载后缓存视图

  • 肯定让您的设置视图管理导航堆栈,这样您的设置视图就可以轻松地在其他项目中重复使用。

答案 1 :(得分:2)

这是另一个“应用程序设置”开源项目: mySettings只是另一种选择......