iOS推迟屏幕更新,直到下一次用户交互

时间:2013-08-31 15:24:10

标签: ios uiview

我需要推迟屏幕更新,直到下次用户互动。虽然代码已经改变了显示,但是我希望它稍后显示,是否可能?

2 个答案:

答案 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中已经存在的代码段的副本。
使用此功能可以发布放在预定义区域内的任何方法。 屏幕更新由系统控制,您无法推迟,但可以推迟在屏幕上更改数据的方法。