objective-c - 无法将值设置为 nil

标签 objective-c swift

我在 Objective-C 中有以下代码:

NSString *tempUserID = [[NSUserDefaults standardUserDefaults] valueForKey:@"userid"];
if (!tempUserId) {
    // Blah blah blah
}

我试着用这种方式快速重写:

    var tempUserID: NSString = NSUserDefaults.standardUserDefaults().valueForKey("userid") as NSString
    if (tempUserID == nil) {

    }

但是我得到以下错误:

类型“NSObject”不符合协议(protocol) NilLateralConvertiable

我做错了什么吗?如何检查该值是否为空?

最佳答案

将您的变量声明为 NSString?而不是 NSString。

var tempUserID: NSString? = ...

关于objective-c - 无法将值设置为 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25453919/

相关文章:

iphone - UIAction Sheet 和 Alert 问题

使用 Parse 进行 iOS 开发 : "Forgot password" button outcome

ios - Apollo iOS : Command/bin/sh failed with exit code 1 | Command PhaseScriptExecution failed with a nonzero exit code

swift - 从 fetchedResultsController.sections 检索对象?[section]

iphone - uitableview 中的复选框出现错误

ios - 如何通过使用自动布局显示和隐藏组件来调整 UITableViewCell 的高度

objective-c - Storyboard在 merge 期间损坏

快速绘制自定义圆

swift - CNContactViewController 上 iOS 13.1 中的键盘覆盖操作表

ios - 嵌入 Youtube 和 Vimeo 视频