ios - 调用中存在额外参数 'boolForKey'?

标签 ios swift

我会在应用程序启动时让某些事情发生。我整理了这个声明。它返回错误:调用中存在额外参数“boolForKey”

我正在使用 Swift。

这个问题是如何解决的?

代码:

if NSUserDefaults.standardUserDefaults(boolForKey: "hasLaunchedOnce") {
            //app has already launched before
        } else {
            NSUserDefaults.standardUserDefaults(setBool: true, forKey: "HasLaunchedOnce")
            NSUserDefaults.standardUserDefaults(synchronize)
            //first time launch
        }

最佳答案

How is this fixed?

看起来这个调用应该是:

if NSUserDefaults.standardUserDefaults().boolForKey("hasLaunchedOnce") {

这是因为 Objective-C 方法名称是 -boolForKey:,而不是 -standardUserDefaults:boolForKey:。转换为 Swift 时,通常将方法名称的第一部分放在左括号之前,后续部分出现在括号内。

关于ios - 调用中存在额外参数 'boolForKey'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24131552/

相关文章:

c# - Xamarin - 找不到类型或命名空间名称 'App'

ios - 永远不会调用 CAAnimationDelegate 委托(delegate)

swift - 在WebKitView中显示本 map 片

ios - 如何快速将 UTC 时间转换为 Unix 时间戳?

swift - @objc 标记是否会改变动态变量的行为?

iphone - 带有 UIActivityIndi​​cator 的 UIAlertView 显示得太晚/线程问题

objective-c - ios如何知道要加载哪个xib/nib?

ios - 防止 UITableViewCell.backgroundView 在方向更改时调整图像大小

ios - 如何使用 Alamofire? (设计模式)

iOS:当我从前台切换到后台时,我丢失了核心数据实体