草庐IT

nsuserdefaults

全部标签

ios - 如何在 NSUserDefault 中设置实体

我们可以将核心日期实体存储到NSUserNSUserDefault中吗?因为我正在尝试保存实体。但是它在我想使用的地方返回null。但是如果我尝试保存实体属性。它返回阀门。如果我使用以下内容保存实体,下面是我的代码示例MyEntity*newEntity=[self.fetchControllerobjectAtIndexPath:indexPath];[[NSUserDefaultsstandardUserDefaults]setObject:newEntityforKey:@"Act"];并使用以下方法获取实体。结果为空。MyEntity*entityAtOtherClass=[[

ios - iOS 如何存储用户数据

我需要存储用户可以添加的数据,他们可以添加无限量的数据。它们可以是NSStrings或UIImage。我查看了NSUserDefaults,但它似乎用于少量数据,例如设置或首选项。存储用户信息的最佳/最安全方式是什么,以便在他们关闭应用程序时信息仍在应用程序中。数据填充UITableView并且是NSMutableArray。最好的方法是什么? 最佳答案 在iOS中存储用户数据的方法肯定有十几种。这里有几个:Propertylists:一种存储常见数据存储对象和容器图的简单方法。如果您刚刚了解iOS的基本知识,这是一个很好的起点。N

iOS NSDictionary 保存到 NSUserDefaults 不保存值

我正在尝试将具有数组值的NSDictionary保存到NSUserDefaults但我遇到了一些奇怪的问题。我的NSDictionary有NSStrings用于keys并且每个value都是一个NSArrayNSNumbers。当我打印字典时,一切都很好。我将这本字典写入NSUserDefaults,如果我立即读回它,一切都很好。使用这个一切接缝就好了:[[NSUserDefaultsstandardUserDefaults]setObject:self.selectedOptionPositionsforKey:PREF_OPTIONS_KEY];[[NSUserDefaultsst

objective-c - 何时重写 objective c getters

在过去的一年中,我第一次与其他人一起参与了一些Objective-C项目。偶尔(而且越来越多)我看到其他人覆盖getter/accessor方法,并在此方法中包含实现代码!对我来说,这是一个疯狂的小镇,因为这是拥有setter的全部意义……这也意味着在setter中设置的属性将在getter中被覆盖,因此毫无意义。是这些人行为不端,还是我错过了什么?是否需要覆盖合成属性的getter方法?例子:@synthesizewidth;-(CGFloat)width{NSNumber*userWidth=[[NSUserDefaultsstandardUserDefaults]objectFo

ios - 无法读取应用程序组的 NSUserDefaults 但可以写入

我在开发内容拦截器扩展时遇到了一个非常奇怪的问题。我正在尝试使用NSUserDefaults和一个应用组在它和我的应用之间共享数据,但是从应用组读取某些内容总是会导致扩展崩溃。这是一个有效的示例代码:funcbeginRequestWithExtensionContext(context:NSExtensionContext){NSUserDefaults(suiteName:"group.Bug")!.setBool(true,forKey:"here")NSUserDefaults(suiteName:"group.Bug")!.synchronize()letattachment

ios - NSUserDefaults 与应用程序状态的核心数据

我有一个现有的大型应用程序使用plists来存储其数据。我在用户默认值中存储应用程序状态,指示当前选择的项目、当前用户和各种其他当前选择。当数据在plist中时,这工作得很好。现在我正在重构以使用CoreData而不是plists。我想将对对象实例的引用存储为当前查看的对象。我知道sqlite和CoreData在数据库中有这个对象的ID,但我不确定在用户默认值中存储什么。我想到了三个选项:生成我自己的顺序ID,将其与我想记住的对象一起存储为“当前”,将该ID存储在用户默认值中。尝试使用NSManagedObjectID并存储在用户默认值中。我“认为”我可以将它转换为字符串,如下所示。这

ios - 如何使用 Xcode 9.3 在 iOS 开发设备中检查 [NSUserDefaults standardUserDefaults]

这个问题在这里已经有了答案:BrowsethefilescreatedonadevicebytheiOSapplicationI'mdeveloping,onworkstation?(6个答案)关闭4年前。在Xcode9.3和iOS模拟器中,[NSUserDefaultsstandardUserDefaults]将值存储在:/Users/{UserName}/Library/Developer/CoreSimulator/Devices/{DeviceGUID}/data/Containers/Data/Application/{applicationGUID}/Library/Pre

iphone - 当我的 iphone 应用程序在后台时,如何在设置包中获取 Bool 变量集的通知?

我制作了一个应用程序,当用户更改设置包中给出的开关时我需要后台同步。我用过time,LocalNotification但是没用。我想要一个在后台工作的通知,并在设置bundle中的开关值发生变化时通知我。 最佳答案 再次从NSUserDefaults中读取值。您可以创建一个新线程,在某个时间间隔检查NSUserDefaults值。 关于iphone-当我的iphone应用程序在后台时,如何在设置包中获取Bool变量集的通知?,我们在StackOverflow上找到一个类似的问题:

iOS - 从 NSUserDefaults :Attempted to dereference an invalid ObjC Object or send it an unrecognized selector 获取 NSDictionary

我尝试从已保存的NSUserDefaults中检索NSMutableArray。我存储NSMutableArray:NSUserDefaults*defaults=[NSUserDefaultsstandardUserDefaults];NSMutableArray*mySavedTremps=[[defaultsobjectForKey:UD_MY_TREMPS]mutableCopy];if(!mySavedTremps)mySavedTremps=[[NSMutableArrayalloc]init];NSMutableDictionary*trempDict=NSMutable

ios - 如何在 applicationWillTerminate 上保存 NSUserDefaults

我的游戏中有一个NSUserDefaults样式的分数结构,并希望在终止应用程序时保存这些值。是否有某种方法可以在重新打开时保存并从文件中重新加载? 最佳答案 不要。每次更改后保存它们(或者,如果您知道您将在短时间内进行大量更改,请在更新后批量保存它们)。applicationWillTerminate:基本上不会在当前版本的iOS中调用(因为引入了后台),因此您不应该依赖它。此外,请考虑如果您的应用程序崩溃并且未保存任何用户信息会发生什么情况-这不是良好的用户体验。所以,永远不要依赖applicationWillTerminate