具有多个plist的InAppSettingsKit

时间:2017-04-19 13:33:59

标签: ios inappsettingskit

我正在为iOS寻找一个非常先进的设置框架。

首先,我想使用自定义编辑器进行某些设置(用户可以选择颜色)。 如果我读得正确,这对IASK来说是可行的。

我的第二个问题没有找到答案。

我们的应用相当广泛,有3个或4个不同的“区域”,我们希望在“区域”的基础上进行设置。 对于标准设置,这绝对不可能,但IASK是否可以实现?

这可能是通过不同的plist或同一个plist中的不同Childpanes但是它需要能够从给定的Childpane启动编辑器。

非常感谢你的回答。

1 个答案:

答案 0 :(得分:1)

使用IASKCustomViewSpecifier绝对可以使用自定义编辑器(请参阅自述文件)。

关于这些区域,我不确定1)区域在结构上是否相同,您只想单独存储用户设置,或者2)它们是完全不同的。

  1. 如果您的区域具有相同的设置并且您只是想要 将它们分开存储,可以使用单独的子类 IASKAbstractSettingsStore。如果要存储所有设置 NSUserDefaults您可以继承IASKSettingsStoreUserDefaults 代替。

    在实施中,您可以使用不同的NSUserDefaults 实例(而不是standardUserDefaults)。然后你的子类 只需要覆盖-init并存储不同的内容 NSUserDefaults属性中的defaults实例。

    或者,您可以使用设置键的前缀。为了这 你必须覆盖所有的设置者和吸气者才能插入你的 前缀。

  2. 如果您只对使用单独的设置屏幕感兴趣 不同的设置,你可以实例化一个 每个区域的IASKAppSettingsViewController个实例并设置 file属性为每个区域的设置plist的名称。该 子窗格内部使用相同的机制,因此您也可以 为每个区域添加PSChildPaneSpecifier s的父页面。这个 甚至可以使用系统设置。