我需要推迟屏幕更新,直到下次用户互动。虽然代码已经改变了显示,但是我希望它稍后显示,是否可能?
答案 0 :(得分:0)
也许看看NSObject方法performSelector:withObject:afterDelay:
由于所有对象都派生自NSObject,因此您可以在所有对象上使用上述方法。 例如,请查看此处:How to use performSelector:withObject:afterDelay: with primitive types in Cocoa?
答案 1 :(得分:0)
自引入ARC以来推迟某些事情的最佳方法是使用GCD dispatch_after函数。
double delayInSeconds = <#time#>;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
<#code to be executed on the main queue after delay#>
});
这是Xcode中已经存在的代码段的副本。
使用此功能可以发布放在预定义区域内的任何方法。
屏幕更新由系统控制,您无法推迟,但可以推迟在屏幕上更改数据的方法。