在我的iOS应用中,我有UITableView
原型细胞。每个cell
都会显示一条文本消息,并显示label
,用于显示与该消息相关的评论数。目前,在cellForRowAtIndexPath
,我正在向服务器查询array
,其中包含与邮件关联的评论,然后将label
设置为array.count
。但是,在滚动浏览table
时,这会导致评论计数出现瞬间不准确,因为cellForRowAtIndexPath
每次在屏幕上显示新cell
时都必须查询服务器,因此有时{ {1}}将暂时显示另一条消息(旧的原型单元格)的注释计数,而新的评论计数仍在加载。什么是这个问题的最佳解决方案?
答案 0 :(得分:0)
您必须在表格视图中在后台发出服务器请求,通过导入dispatch/dispatch.h
然后使用此代码来执行此操作
//in the cellForRowAtIndexPath; method
dispatch_queue_t bg = dispatch_queue_create("com.you.test", NULL);
dispatch_async(bg, ^{
//get stuff from server
});