在解析中使用用户的好友列表更新Tableview

时间:2015-06-01 20:07:58

标签: ios uitableview swift parse-platform pfobject

我正在使用 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 如果您需要任何其他信息,我们非常感谢您的帮助。

谢谢!

1 个答案:

答案 0 :(得分:1)

由于您以异步方式获取数据,因此UI不知道何时更新。拥有所有数据后,您需要更新UI。

尝试在self.tableView.reloadData()块中for循环之后放置findObjectsInBackgroundWithBlock