我们在iOS多线程编程中,经常会在子线程中需要操作主线程UI的视图控件,比如,把子线程中执行的运算结果,在主线程中TextView中显示。或者动态创建按钮UIButton,添加到主线程UI 视图UIView中,这种操作,在动画等各种应用中非常普遍,对初学者来说,需要抓住最简单的操作框架,就可以实现漂亮的界面。
下面直接看段代码。
-(void) downloadTextFile:(NSString *)urlToDownload htmlFlag:(BOOL)html writeToLocalFile:(NSString*)fileNameStr updateMenuFlag:(bool)flag{
//download the file in a seperate thread.这是一段从网上下载文档的代码,用子线程实现
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSURL *url = [NSURL URLWithString:urlToDownload];
//下面的函数是用于在主线程UI中显示当前子线程状态
[self threadMessageShow:@"downloading remote config file...."];