处理从 UISwitch 设置派生并存储在作为持久设置保存到用户目录的 NSMutableDictionary 中的布尔值的最佳方法是什么?具体来说,在写入文件系统和从文件系统读取的 NSMutableDictionary 中,保持布尔值与数值不同的最佳方法是什么?
========
补充说:感谢阿德里安和本。所以,结果是如果通过 [NSNumber numberWithBool:] 存储(这是我一直在做的)没有方便的方法来确定该值是否源自布尔值,对吗?
第二部分是我存储的 NSMutableDictionary 最初是通过具有布尔值的 plist 创建它来创建的。这些值在第一次读入时具有 NSCFBoolean 类。现在我的策略是将我在字典中使用的值与 plist 中的相应条目进行比较。
这很重要的原因是我正在动态生成界面元素以允许用户操作这些值,并且我正在将布尔值与 UISwitch 相关联。如果我通过转换为数字而丢失了原始类,我会得到一个不合适的用户界面元素。
我正在考虑将数组替换为存储值,其中第一个值是存储值,其余条目是选择:如果存在两个选择,则将其视为布尔值...在其他情况下,它们用作选择器价值观。但这似乎很麻烦,如果可靠的话。
欢迎任何想法...