首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PushWoosh UIWebview

PushWoosh UIWebview
EN

Stack Overflow用户
提问于 2014-01-03 22:04:26
回答 1查看 265关注 0票数 0

准备出丑:

我有这个框架应用程序,它有PushWoosh通知类。效果很好。我可以向我的应用程序发送推送信息。

要使此操作,在我的AppDelegate中,有一个名为

代码语言:javascript
复制
- (void) onPushAccepted:(PushNotificationManager *)pushManager withNotification:(NSDictionary *)pushNotification

这样我就可以在通知被接受的时候启动一些东西。

同时,在我的ViewController中,我有这样一个方法:

代码语言:javascript
复制
-(void)loadURL{
    NSLog(@"testing");
    [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:TOPIC]]];
    [webView reload];
}

当从ViewController本身调用它时,它工作得很好。

但是,当我试图从appDelegate中的‘appDelegate’方法中调用该方法时,webView并不显示所需的URL,尽管正如日志记录所示,该方法被调用。

我想这表明我对这一切的运作缺乏一些基本的理解。

因此,我会满足于一些条件,这将使这项工作,但我会很高兴地解释一下为什么和如何它背后。

我试着将onPushAccepted:放在ViewController中,但这根本行不通,尽管我在ViewController.m中包含了必要的"PushNotificationManager.h“。

我很困惑,需要你的帮助。

我想你的回答会让我更接近基本知识。

先谢了!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-03 22:53:46

在这个特定的例子中,Sjakelien使用的是一个单一的视图应用程序。混淆之处在于,通过执行以下ViewController实例化AppDelegate中的ViewController * vc = [[ViewController alloc]init]; [vc loadURL];的尝试不起作用。

在本例中,解决方案是获取屏幕上显示的ViewController,使用

代码语言:javascript
复制
- (void) onPushAccepted:(PushNotificationManager *)pushManager withNotification:(NSDictionary *)pushNotification {
  ViewController *vc = (ViewController*)self.window.rootViewController;
  [vc loadURL];
}

具有不同设置(如UINavigationController )的应用程序需要采取不同的操作。

有几个选择:

  • popToRootViewController并实例化ViewController的新实例并将其推送到导航堆栈上。
  • 不使用ViewController将一个新的popToRootViewController实例推到导航堆栈上
  • 在一个模态中表示ViewController
  • 修改应用程序的模型
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20913514

复制
相关文章

相似问题

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