我正在使用 Parse 将朋友的用户名添加到PFRelation
的当前用户对象中,我想将其检索到朋友列表视图控制器中。这是我的代码,用于检索当前用户好友列表的对象并更新tableview以显示当前用户的最新好友列表。保存我所有应用程序注册用户的 Parse 中的班级是“用户”
这是我在swift中的代码
var userArray: [String] = []
var usernames:[String] = [""]
var userids :[String] = [""]
override func viewDidLoad() {
super.viewDidLoad()
var query = PFUser.query()
var currentUser = PFQuery(className:"User")
currentUser.whereKey("currentUser", equalTo: PFUser.currentUser())
currentUser.findObjectsInBackgroundWithBlock({ (objects:PFObject, error:NSError) -> Void in // <- error here says that Expression resolves to an unused function
if objects != nil { // <- error here says that cannot invoke != with an argument list of type(PFObject,NilLiteralConvertible)
let users = objects
self.users.removeAll(keepCapacity: true)
self.usernames.removeAll(keepCapacity: true)
for object in users {
if let user = object as? PFUser {
userArray.append(user.username)
}
}
else { // <- error here says that Expected expression
println("Error")
}
}
}
}
问题是我的tableview没有显示任何内容,它只是一个空的tableview,但是当我在parse.com上查看时,当前用户的关系存在,并且我添加的所有用户都存在于该关系中,所以问题是检索当前用户的对象并更新tableview 如果您需要任何其他信息,我们非常感谢您的帮助。
谢谢!
答案 0 :(得分:1)
由于您以异步方式获取数据,因此UI不知道何时更新。拥有所有数据后,您需要更新UI。
尝试在self.tableView.reloadData()
块中for
循环之后放置findObjectsInBackgroundWithBlock