【发布时间】:2014-10-29 18:55:57
【问题描述】:
当按下登录按钮时,我有以下 swift 代码。
@IBAction func login(sender: UIButton)
{
sender.hidden = true;
self.loader.hidden = false;
println("HIDDEN");
sleep(2);
}
但是登录按钮需要很长时间才能真正隐藏,在“HIDDEN”打印到控制台很久之后。我认为这是因为我在 sleep(2) 中添加了模拟延迟,但我不确定在隐藏按钮后如何使这种睡眠发生。
【问题讨论】:
-
使用 GCD
dispatch_after -
你不应该睡在按钮响应器中;这将导致您的应用程序在此期间无响应。你真的想通过睡眠来完成什么?
-
模拟通过远程服务器进行身份验证所需的时间
-
@MatteoPacini 我可以快速获得一个示例,它会导致睡眠仅在隐藏后发生吗?
-
@Ben_hawk 使用
sleep()是一种非常糟糕的做法,尤其是在主线程上。你到底想达到什么目的?
标签: ios objective-c xcode swift xcode6