0

更新 xcode 后,我根本无法从字符串中删除 optional() 吗?

retrievedUsername = KeychainWrapper.stringForKey("username")!

这打印出来

可选(“香港”)

但我需要它

香港

我试过了

if let username = KeychainWrapper.stringForKey("username"){
   retrievedUsername = username
}

但没有运气!有任何想法吗?

4

2 回答 2

1

您的值可能是包含可选的可选,因此您必须将其解包两次:

if let temp = KeychainWrapper.stringForKey("username"), let username = temp {
    retrievedUsername = username
}

如果这不起作用,这是因为它不是双重可选的,这意味着由于先前的错误,您的原始字符串已经包含文本“Optional(HK)”。

于 2015-09-21T13:11:35.537 回答
0

我发现了问题,它会用“可选”保存到钥匙串中,所以当它检索到字符串时它是“可选(“HK”)”,这就是为什么解开它不起作用

于 2015-09-21T13:33:33.523 回答