首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ios webcal请求完成回调?

ios webcal请求完成回调?
EN

Stack Overflow用户
提问于 2013-02-20 02:09:08
回答 2查看 413关注 0票数 0
代码语言:javascript
复制
NSURL *url = [NSURL URLWithString:@"valid_webcal_url"];
if (![[UIApplication sharedApplication] openURL:url])
{
    // failure callback
    NSLog(@"%@%@",@"Failed to open url:",[url description]);
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:LCHLocalizedString(@"SUBSCRIBE_ERROR", nil) message:nil delegate:self cancelButtonTitle:@"Okay" otherButtonTitles: nil];
    [alert show];
}

所以我已经知道如何查看加载webcal时是否出现错误,但是我如何知道webcal何时加载成功呢?当点击"subscribe“按钮时,我会显示一个加载器,只需要知道何时关闭它。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-20 04:13:11

因为这是通过webcal协议使用openURL来检索项目,所以不存在应用程序和webcal检索的可视分离。

我要做的是在调用openURL之后侦听通知UIApplicationWillResignActiveNotification,当通知被触发时,我假设是webcal接管了我的openURL调用。

这是一项棘手的业务,也是一个基本的解决方案,但嘿,它是有效的!感谢您的所有帮助/建议。

票数 1
EN

Stack Overflow用户

发布于 2013-02-20 04:00:08

正如已经在评论中指出的,这将把你的应用程序放在后台,而不能保证自动返回。

假设你真的想调用一个网页(而不是做一个web api调用),你可能应该创建一个嵌入了UIWebViewUIViewController的自定义子类。

将您的子类设置为UIWebView的委托将允许您对失败/成功做出反应。您甚至可以使用- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType拦截和停止UIWebView调用

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14964429

复制
相关文章

相似问题

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