Готов выставить себя дураком:
У меня есть приложение-скелет, в котором есть классы уведомлений PushWoosh. Работает нормально. Я могу отправить push-сообщение в свое приложение.
Для этого в моем AppDelegate есть метод под названием
- (void) onPushAccepted:(PushNotificationManager *)pushManager withNotification:(NSDictionary *)pushNotification
это позволяет мне запускать материал, когда уведомление принято.
Между тем, в моем ViewController у меня есть такой метод:
-(void)loadURL{
NSLog(@"testing");
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:TOPIC]]];
[webView reload];
}
Этот отлично работает при вызове из самого ViewController.
Однако, когда я пытаюсь вызвать этот метод из метода onPushAccepted в appDelegate, webView не показывает желаемый URL-адрес, хотя, как показывает запись в журнале, метод вызывается.
Думаю, это показывает, что мне не хватает фундаментального понимания того, как все это работает.
Поэтому я был бы удовлетворен некоторыми строками, которые заставили бы эту работу работать, но я был бы очень рад объяснению того, почему и как это стоит.
Я попытался поместить onPushAccepted: в ViewController, но это вообще не сработало, хотя я включил необходимый «PushNotificationManager.h» в ViewController.m.
Я в замешательстве, и мне нужна твоя помощь.
Думаю, ваш ответ приблизит меня к основам.
Впереди спасибо!
webview
в инспекторе переменных. Вероятно,webview
nil
- person Hugo Tunius   schedule 04.01.2014-(void)loadURL
из AppDelegate? - person Hugo Tunius   schedule 04.01.2014ViewController
с помощьюinit
.ViewController
загружается из пера или раскадровки? Или вы создаете это с помощью кода. В любом случае вы захотите вызвать- (void)loadURL
для экземпляраViewController
, который отображается на экране, поэтому создание нового "на лету" не сработает. - person Hugo Tunius   schedule 04.01.2014