Форум программистов, компьютерный форум CyberForum.ru

Как обратиться к методу в ViewController.m из AppDelegate.m? - Objective-C

Восстановить пароль Регистрация
 
gogogo
0 / 0 / 0
Регистрация: 15.06.2014
Сообщений: 3
15.06.2014, 22:29     Как обратиться к методу в ViewController.m из AppDelegate.m? #1
в AppDelegate.m приходят пуш уведомления через сторонний сервис, я хочу по приему пуш уведомления совершать обновление таблицы в ViewController.m, есть у меня в ViewController.m такой метод

Objective-C
1
2
3
4
5
6
7
8
9
    -(void) updTable
    {
        // удаляем все данные старые
    [items removeAllObjects];
    [items2 removeAllObjects];
        
        // рефреш таблицы
        [self.tableView reloadData];
    }
Как к нему обратиться из AppDelegate.m ?
Ессно, чтобы он знал о чем речь внутри этого метода, т.е. очищал данные и перерисовывал таблицу.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.06.2014, 22:29     Как обратиться к методу в ViewController.m из AppDelegate.m?
Посмотрите здесь:

2 ViewController Objective-C
Objective-C Не создаются объекты на ViewController
Как удалить ViewController из UITabBarController Objective-C
Objective-C Как из одного метода обратиться к переменной другого?
Objective-C MVC storyboard+ViewController
Objective-C Добавление кода отправки GET запроса в AppDelegate.m
Загрузка ViewController из xib в storyboard Objective-C

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
noname_club
 Аватар для noname_club
102 / 90 / 9
Регистрация: 01.05.2013
Сообщений: 577
15.06.2014, 23:30     Как обратиться к методу в ViewController.m из AppDelegate.m? #2
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#import "ViewController.h"
 
 
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
    UINavigationController * RootController = (id) [[[[UIApplication sharedApplication] delegate] window] rootViewController];
    
    for (id obj in  RootController.viewControllers) {
        if ([obj isKindOfClass:[ViewController class]]) {
            ViewController * vc = obj;
            [vc updTable];
            break;
        }
    }
}
при условии что первый контроллер в приложении является UINavigationController

Добавлено через 3 минуты
Также данная задача может решаться через NSNotificationCenter посредством рассылки соответствующей нотификации всем контроллерам на нее "подписанным"
gogogo
0 / 0 / 0
Регистрация: 15.06.2014
Сообщений: 3
15.06.2014, 23:52  [ТС]     Как обратиться к методу в ViewController.m из AppDelegate.m? #3
Спасибо, у меня по идее уже есть метод, который обрабатывает приход пуш уведомления
AppDelegate.m
Objective-C
1
2
3
4
5
6
-(void)onReceivePushNotification:(NSDictionary *) pushDict andPayload:(NSDictionary *)payload {
    [payload valueForKey:@"title"];
    UIAlertView *message = [[UIAlertView alloc] initWithTitle:@"Alert!" message:[pushDict valueForKey:@"alert"] delegate:self cancelButtonTitle:@"Hmm" otherButtonTitles: @"OK",nil];
    [message show];
     NSLog (@"Hello, World!");
}
Вот хеллоу Ворлд - работает, в консоли вижу.
А как туда подставить условное [vc updTable]; ?
Ваш код ставил рядом - не поехало.

Вот такая у меня структура проекта:
Миниатюры
Как обратиться к методу в ViewController.m из AppDelegate.m?  
noname_club
 Аватар для noname_club
102 / 90 / 9
Регистрация: 01.05.2013
Сообщений: 577
16.06.2014, 00:25     Как обратиться к методу в ViewController.m из AppDelegate.m? #4
мой код предназначен для отлова push уведомлений в AppDelegate.m

onReceivePushNotification
к какому протоколу этот метод относится? чето нагуглить не могу.
gogogo
0 / 0 / 0
Регистрация: 15.06.2014
Сообщений: 3
21.06.2014, 18:38  [ТС]     Как обратиться к методу в ViewController.m из AppDelegate.m? #5
noname_club, это из библиотеки пуш сервиса
Yandex
Объявления
21.06.2014, 18:38     Как обратиться к методу в ViewController.m из AppDelegate.m?
Ответ Создать тему
Опции темы

Текущее время: 23:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru