iphone - NSUserDefaults setObject 和 IntegerForKey,在同一个键上使用,如果不是,我该如何解决?

标签 iphone objective-c ios cocoa-touch

我需要遍历 NSUserDefaults 中的所有键并将它们转换为另一种格式。稍后我想以编程方式将它们传回。

我有很多键,但我无法通过命名约定或其他方式来确定我是否使用了 setObject 或 setInteger 等。

如果我使用 setObject,这将使我能够在该键上使用 integerForKey 吗?

如果我不想要我可以用它代替吗?

最佳答案

不,如果您使用integerForKey:,您应该无法获取正确的对象。但是,如果使用 objectForKey:,则可以获得正确的对象。这是因为如果您使用了 setInteger:forKey:,它会自动调用 setObject:forKey:。因此,将会有一个 key 对象。因此,您要做的就是迭代键,使用 objectForKey: 获取对象并将其转换为您想要的数据类型。

关于iphone - NSUserDefaults setObject 和 IntegerForKey,在同一个键上使用,如果不是,我该如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8586580/

相关文章:

ios - 使用代码布局时如何防止view进入UITabBar下面

ios - 在特定时间和日期调用 iOS 应用程序

iphone - CBD Store 作为 iOS 中核心数据的持久存储

ios - 选中时的 Tabman Image Tint 颜色

ios - Facebook Graph Api的位置连接用户对象在ios-sdk中无法正确响应?

ios - 通过对具有匹配 ID 号的对象进行分组来重建 NSArray?

javascript - 添加到 <select> 的选项在 iPhone 的列表框中是不可见的

iphone - 当对象具有 "description"属性时,Core Data 无法解决故障?

objective-c - 核心数据: Error if deleting unsaved object

ios - Devise with Facebook Omniauth - 如何使用 API 进行身份验证?