在我的应用中,我有一个登录视图。当我输入登录详细信息并单击登录按钮时,应用程序会冻结一段时间然后继续。我知道它正在冻结,因为它正在与远程服务器进行通信,但是如何防止冻结并显示漂亮的状态动画呢?
答案 0 :(得分:3)
由于您与服务器进行通信需要一些时间,因此您可以在alertview上添加一些动画。
但是通过简单地调用alertview它将无法正常工作。
所以你必须按照以下步骤进行:
1)在提交按钮上单击首先添加自定义指示视图
2)开始动画视图
3)调用NSThread进行服务器通信,如
[NSThread detachNewThreadSelector:@selector(yourActionName)toTarget:self withObject:nil];
4)删除动画视图
有关更多信息,请阅读本文: http://iphonedevcentral.blogspot.com/2010/08/safe-threaded-design-and-inter-thread.html 强>
答案 1 :(得分:1)
您的API调用阻止了GUI线程。您可以通过在NSOperation
调用中移动远程API请求调用来绕过此问题,并弹出加载屏幕直到API调用返回。