【发布时间】:2012-02-07 11:23:18
【问题描述】:
在我的 iOS5 应用程序中,我有 UITableView,它会根据存储在 progressLabelArray 中的 NSString 值显示单元格。我已经从我的较低层注册了一个回调,并在一个 C 函数中接收到它们,我通过对 self 的引用设法调用 UI 更新方法。
static void callback_handler(int nCode) {
[refToSelf updateProgressView:nCode];
}
-(void) updateProgressView:(int32_t) nCode
{
NSString *status = nil;
status = [self progressUpdateToString:nCode];
[self.progressLabelArray insertObject:status atIndex:0];
[self.progressTableView reloadData];
[self.progressTableView setNeedsDisplay];
}
我猜,由于回调来自同一个(UI 线程),因此可能不需要 performSelectorOnMainThread。
我的问题是表视图只有在整个操作完成后才会刷新,显示最后一个回调值。有没有一种方法可以在每次回调后强制 UI 刷新?回调可能会比较快。
【问题讨论】:
-
如果回调来得太快,那么您将如何观察数据的变化,即为什么只有最后一个变化是可见的
-
首先它们不会太快而不会被忽视,然后当我在各种回调后调试并中断时,我只会在视图上看到初始值。
-
仍然无法解决问题。请我亲爱的 iOS 朋友 - 帮助!!!
-
将您的代码发送至 rathore619@gmail.com。
-
那太好了...然后添加你的答案并接受它
标签: iphone objective-c uitableview ios5