新程序员试图学习Swift,我试图将我的应用程序设置为仅显示当前用户在解析照片共享数据库上的帖子。理论上这里的第一种方法应该将当前用户添加到" followWho"阵列。
def get_likes(self, obj):
post_id = obj.id
post_like = get_redis_connection("default")
likes = post_like.get("post"+":"+str(post_id))
if likes == None:
return 0
else:
likes = likes.decode('utf-8')
return likes
}
然后我的第二个方法应该显示帖子并过滤掉除当前用户之外的所有用户
override func viewDidLoad() {
super.viewDidLoad()
let userQuery = PFUser.query()
userQuery?.whereKey("username", equalTo: PFUser.currentUser()!.username!)
userQuery?.findObjectsInBackgroundWithBlock ({
(objects: [PFObject]?, error: NSError?) -> Void in
if error == nil {
//no error
if let objects = objects {
for object in objects {
let followingWho = object["followingWho"] as! NSArray!
self.loadData(followingWho)
}
}
} else {
//error
NSLog("Error")
}
})
self.tableView.reloadData()
但似乎没有任何效果。代码编译并运行,但它似乎只拉出一个空白屏幕,不加载任何帖子。
答案 0 :(得分:0)
此可能成为问题,但如果它不是 问题,那肯定是 问题:您正在尝试更新来自后台线程的UI。 findObjectsInBackgroundWithBlock
在后台调用其完成块,从后台更新UI是一个很大的禁忌。而是在主线程上调用UI更新:
dispatch_async(dispatch_get_main_queue(), {
//Do your UI updates here
})