swift - 无法使用 'append' 类型的参数列表调用 '(String?!)'

标签 swift parse-platform

我尝试将 Parse 中的用户名添加到数组中,以在 UITableView 中显示它们,但当我将用户名附加到数组时出现错误。

我得到的错误是:无法使用“(String?!)”类型的参数列表调用“append”

我做错了什么?

var usernames = [""]

func updateUsers() {      
    var query = PFUser.query()
    query!.whereKey("username", notEqualTo: PFUser.currentUser()!.username!)
    var fetchedUsers = query!.findObjects()

    for fetchedUser in fetchedUsers! {
        self.usernames.append(fetchedUser.username)
    }
}

最佳答案

我解决了我的问题。我将数组声明为空数组,并使用以下代码解包可选内容:

var usernames = [String]()

self.usernames.removeAll(keepCapacity: true)

    for fetchedUser in fetchedUsers! {
        if let username = fetchedUser.username as String! {
            self.usernames.append(username)
        }
    }

关于swift - 无法使用 'append' 类型的参数列表调用 '(String?!)',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29756722/

相关文章:

ios - Firebase动态链接不会缩短URL

c# - 如何在 xamarin iOS 中使用 swift

swift - 如何通过索引快速选择 CALayer?

javascript - 解析云代码检查日期是否是今天

android - 手动设置 parseObject 的 objectId

parse-platform - getSessionToken() 在 Parse 中不起作用

swift - 我想在解析时保存 UIImage 而不是 nil 值

swift - 根据字符串更改选择 UiPickerView 文本

ios - 解析本地数据存储网络错误 100

iOS Swift - 如果当前日期等于本月的数字,则执行函数