iPhone开发中的选择器、多线程与消息传递
在iPhone开发中,我们常常会遇到需要处理耗时任务的情况,而这些任务可能会阻塞界面的加载,导致应用“冻结”。本文将介绍一些实用的技术和方法,帮助你避免这种情况,让应用更加流畅和响应迅速。
一、延迟调用选择器与后台运行
在Objective - C中,有两个非常有用的方法可以帮助我们处理耗时任务: performSelector:withObject:afterDelay: 和 performSelectorInBackground:withObject: 。
1. performSelector:withObject:afterDelay: 方法
这个方法允许我们在短时间延迟后调用一个方法。例如:
[myFoo performSelector:@selector(sayFooName:) withObject:@"Ralph" afterDelay:20];
上述代码会在20秒延迟后调用 myFoo 的 sayFooName: 方法,并将字符串 "Ralph" 作为参数传递。
这个方法看似简单,但它可以让我们轻松完成一些原本可能需要多线程才能实现的任务。比如在 UIViewController 的 viewWillAppear: 方法中:
超级会员免费看
订阅专栏 解锁全文
1146

被折叠的 条评论
为什么被折叠?



