首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在方法被触发之前,iOS 5会保持该方法一段时间

在方法被触发之前,iOS 5会保持该方法一段时间
EN

Stack Overflow用户
提问于 2012-01-19 19:54:43
回答 2查看 99关注 0票数 1

我已经在我的应用程序中实现了一个自动登录屏幕,如果用户保存了他的凭据,它将首先出现。在该屏幕上有一个取消按钮,用户可以选择取消自动登录并在登录屏幕上输入不同的凭据。

我正在调用viewDidLoad中的web服务,由于用户没有时间取消该过程,因此需要大约1秒的时间才能自动登录。

我想知道是否有任何解决方案,我们可以将web服务调用保持大约3-4秒,以便用户有时间取消,然后web服务被调用。

感谢您的帮助,谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-19 20:01:55

是的,您可以使用NSTimer而不是立即调用您的服务调用。

有关如何使用它的详细说明,请参阅How do I use NSTimer?

示例

代码语言:javascript
复制
// define a timer as instance variable in your .h file
NSTimer *_loginTimer;


// use timer in your .m file
- (void) viewDidLoad {
    // initialize timer (3 seconds)
    _loginTimer = [[NSTimer scheduledTimerWithTimeInterval:3.0
        target:self
        selector:@selector(doAutoLogin)
        userInfo:nil
        repeats:NO] retain];
}

- (void) doAutoLogin {
    // request to perform login
}

- (void) cancelAutoLogin {
    // invalidate timer
    [_loginTimer invalidate];
    _loginTimer = nil;
}
票数 2
EN

Stack Overflow用户

发布于 2012-01-19 20:08:15

您可以使用

代码语言:javascript
复制
-(void)viewDidLoad
{
    [self performSelector:@selector(doAutoLogin) withObject:nil afterDelay:3];
}

- (void) doAutoLogin {
    // request to perform login
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8925613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档