`

how to use Using NSUserDefaults

阅读更多
Using NSUserDefaults

Here is a quick reference for some of the things you can do with NSUserDefaults
Saving


NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

// saving an NSString
[prefs setObject:@"TextToSave" forKey:@"keyToLookupString"];

// saving an NSInteger
[prefs setInteger:42 forKey:@"integerKey"];

// saving a Double
[prefs setDouble:3.1415 forKey:@"doubleKey"];

// saving a Float
[prefs setFloat:1.2345678 forKey:@"floatKey"];

// This is suggested to synch prefs, but is not needed (I didn't put it in my tut)
[prefs synchronize];

Retrieving

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

// getting an NSString
NSString *myString = [prefs stringForKey:@"keyToLookupString"];

// getting an NSInteger
NSInteger myInt = [prefs integerForKey:@"integerKey"];

// getting an Float
float myFloat = [prefs floatForKey:@"floatKey"];


Clearing NSUserDefaults
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"defunctPreference"];




- (NSUserDefaults *) loadUserSettings:(NSString *)aKey

{

// Load user settings

NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];

if (![settings stringForKey:aKey])

{

// The settings haven't been initialized, so manually init them based

// the contents of the the settings bundle

NSString *bundle = [[[NSBundle mainBundle] bundlePath]

stringByAppendingPathComponent:@"Settings.bundle/Root.plist"];

NSDictionary *plist = [[NSDictionary dictionaryWithContentsOfFile:bundle]

objectForKey:@"PreferenceSpecifiers"];

NSMutableDictionary *defaults = [NSMutableDictionary new];

// Loop through the bundle settings preferences and pull out the key/default pairs

for (NSDictionary* setting in plist)

{

NSString *key = [setting objectForKey:@"Key"];

if (key)

[defaults setObject:[setting objectForKey:@"DefaultValue"] forKey:key];

}

// Persist the newly initialized default settings and reload them

[settings setPersistentDomain:defaults forName:[[NSBundle mainBundle] bundleIdentifier]];

settings = [NSUserDefaults standardUserDefaults];

}

return settings;

}


分享到:
评论

相关推荐

    自己写的一个NSUserDefaults Demo

    NSUserDefaults是iOS平台上的一种轻量级的数据持久化方法,主要用于存储用户偏好设置或者应用程序的状态数据。在Objective-C中,它是苹果提供的Foundation框架的一部分,为开发者提供了一种简单的方式来读写小型数据...

    IOS源码应用Demo-NSUserdefaults(读取和写入自定义对象).zip

    - 使用`NSKeyedArchiver`的`archiveRootObject:toFile:`方法将归档后的对象保存到文件,对于`NSUserDefaults`,通常是保存在内存中。 2. **从`NSUserDefaults`读取自定义对象**: - 使用`NSKeyedUnarchiver`的`...

    Swift 用户首选项 NSUserDefaults

    Swift中的`NSUserDefaults`是苹果iOS、macOS等操作系统中用于存储轻量级用户偏好设置的主要方式。它提供了一个简单易用的接口,让开发者能够快速读取和写入用户的个性化设置,而无需复杂的数据库操作。在本文中,...

    PAPreferences, 使用 @dynamic 访问 NSUserDefaults.zip

    PAPreferences, 使用 @dynamic 访问 NSUserDefaults PAPreferences使用NSUserDefaults存储用户首选项的简便方法。PAPreferences将 dynamic 属性映射到 NSUserDefaults getter和 setter,以便访问默认值,就像它们是...

    iphone 开发学习基础NSUserDefaults

    在iOS开发中,`NSUserDefaults` 是一个至关重要的组件,它允许开发者存储并检索轻量级的用户偏好设置或应用状态数据。本教程针对初学者,将深入探讨`NSUserDefaults`的基本用法,包括如何设置、读取值以及如何持久化...

    NSUserDefaults的用法

    NSUserDefaults是iOS开发中一个非常重要的类,用于存储用户的基本偏好设置和轻量级的数据。它提供了简单的方法来读取和写入数据,这些数据在应用的生命周期内保持持久化,并在用户下次打开应用时仍然可用。这个教程...

    Troubleshooting.Xcode.1484215613

    Troubleshooting Xcode is great for the developer wanting to extend his or her knowledge about obscure problems and limitations involving the use of Xcode, Objective-C, and Swift as well as how to use ...

    IOS应用源码——NSUserdefaults(读取和写入自定义对象).zip

    在iOS应用开发中,`NSUserDefaults` 是一个至关重要的组件,它允许开发者存储用户偏好设置或者轻量级的数据。这个压缩包"IOS应用源码——NSUserdefaults(读取和写入自定义对象).zip"包含了一个示例项目,展示了...

    weatherproject_for_NSUserDefaults

    在iOS开发中,`NSUserDefaults` 是一个至关重要的组件,它被用来存储用户偏好设置和轻量级的数据。在"weatherproject_for_NSUserDefaults"这个项目中,我们深入学习了如何利用`NSUserDefaults`来管理天气预报应用中...

    NSUserDefaults-SevenSecurityLayers:仅通过一行代码保护您的NSUserDefaults。 使用简单,强大的加密保护,最高的生产率

    NSUserDefaults + SevenSecurityLayers.h(已过时,不再维护) 为NSUserDefaults提供加密层以安全保存数据的类别。 使用强大的AES 356位加密####效益:*仅用一行代码保护用户数据。*支持混淆二进制源中的密钥*...

    ios-NSUserDefaults替代品:NSUserDefaultsModel(基于Runtime写的库).zip

    使用系统的NSUserDefaults进行存取值实在是难以对其进行统一管理,为此NSUserDefaultsModel就很好的解决了这一难题,并且还支持Cocoapods。 github地址:https://github.com/liuchongfaye/NSUserDefaultsModel ...

    iOS之数据持久化-NSUserDefaults

    其中,NSUserDefaults是苹果提供的一种轻量级的数据持久化方式,主要用于存储少量的基本数据类型,如字符串、整数、浮点数、二进制数据等。这个教程我们将深入探讨iOS中的数据持久化,特别是如何使用NSUserDefaults...

    XBUserDefaults:利用OC RunTime封装NSUserDefaults

    XBUserDefaultsXBUserDefaults是利用Objective-C RunTime 机制对NSUserDefaults进行一层封装。大大增加了易用性和可维护性。性能基本毫无影响(100000次NSString读写,耗时仅多0.4s±0.05s)。几乎每个iOS项目中都会...

    NSUserDefaults Demo iphone

    NSUserDefaults是iOS和macOS开发中的一个关键组件,用于存储应用程序的轻量级用户偏好和设置。这个"NSUserDefaults Demo iphone"示例旨在展示如何在iPhone应用中有效地使用这一功能。 NSUserDefaults通常用于保存...

    NSUserDefaults-记住密码.zip

    `NSUserDefaults`(用户默认值)是苹果提供的一种轻量级的数据存储解决方案,它允许开发者以键值对的形式保存简单类型的数据,如字符串、整数、布尔值、数组和字典等。这个压缩包"NSUserDefaults-记住密码.zip"包含...

    IOS中NSUserDefaults保存账号密码

    在iOS开发中,`NSUserDefaults` 是一个非常常用的数据持久化工具,它主要用于存储用户的一些偏好设置或者轻量级的数据。当需要在应用的不同会话之间持久化数据,比如用户的登录状态、账号或密码等信息时,`...

    IOS应用源码——NSUserdefaults(读取和写入自定义对象).rar

    2. 序列化对象:使用`NSKeyedArchiver`的`archiveRootObject:toFile:`方法将对象编码并保存到文件,虽然这里不是直接保存到`NSUserDefaults`,但我们可以先存到临时文件,然后将文件数据存入`NSUserDefaults`。...

    使用NSUserDefaults存储自定义对象.doc

    使用NSUserDefaults存储自定义对象.doc

    NSUserdefaults读取和写入自定义对象.rar

    在iOS开发中,`NSUserDefaults` 是一个至关重要的组件,它被用来存储用户的基本偏好设置或轻量级数据。这个压缩包文件"NSUserdefaults读取和写入自定义对象.rar"显然关注的是如何利用`NSUserDefaults`来处理自定义...

Global site tag (gtag.js) - Google Analytics