UIView不会实时显示更改的背景数据

时间:2011-04-19 18:05:28

标签: cocoa-touch nsoperation real-time-data

简单场景:后台线程是计算要在主线程中实时显示的数据。

数据:在后台线程中转换为NSString类型的动态/变量数据,显示在主线程的UILabel(或NSLabel)中。

我自己的环境:使用Xcode 4 +的iOS 4+(与OS X相关)。

设计:后台线程(通过NSOperation / NSOperationQueue)通过DELEGATION将数据/迭代发送到主(主机)线程。

注意:主线程 *在阅读时间内看到** 此数据(通过NSLog())....

然而,前端UIView(或NSView)实时执行 NOT 更新/迭代。

范例请求:类似于实时数字时钟....勾选,勾选...您会看到更新的秒数。我需要与速度,位置等同上。 我尝试了'setNeedsDisplay'方法调用; 无效

问题:在MAIN线程中实时显示的首选方法是什么,在后端线程上计算的数据是什么?

此致 RIC。

我得到了解决方案。 你把它放在NSOperation(背景)例程中:

dispatch_async(dispatch_get_main_queue(), ^ { myMainThreadViewController.UILabel.text = theData; });

0 个答案:

没有答案