gpt4 book ai didi

xcode - NSUserDefaults、UISwitch 和设置默认值

转载 作者:行者123 更新时间:2023-12-02 05:16:17 27 4
gpt4 key购买 nike

我有一个 UISwitch,用于打开或关闭声音。使用 NSUserDefaults 保存状态。效果很好。但如果应用程序在安装后从头开始启动,则 BOOL 值为 0,开关为 OFF。因为之前没有保存任何值。所以默认是关闭的,你可以打开它,下次它仍然是打开的。

我希望反过来,所以在安装应用程序时,开关默认打开,您可以将其关闭。

我该如何解决?

最佳答案

application:didFinishLaunchingWithOptions: 中,您检查是否已设置特定键。如果返回 nil,则将其设置为您选择的默认值。请查看下面的代码片段以进行说明。

我建议您在 if 语句中使用 objectForKey:,因为这样可以使代码更简单且不易出错。当然,默认值可以是您喜欢的任何值。

目标-C

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];

if (![ud objectForKey:@"YOUR_KEY"]) {
[ud setBool:YES forKey:@"YOUR_KEY"];
}

// Your Custom Code

return YES
}

swift 3

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
let ud = UserDefaults.standard

if ud.object(forKey: "YOUR_KEY") == nil {
ud.set(true, forKey: "YOUR_KEY")
}

// Your Custom Code

return true
}

关于xcode - NSUserDefaults、UISwitch 和设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14581254/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com