проблема в вызове веб-сервиса из другого класса - PullRequest
0 голосов
/ 08 апреля 2011

это мой класс

#import "newsFeedController.h"
- (void)viewDidLoad {
//statements
webService = [[WebServiceManager alloc] init];
    [webService setDelegate:self];
//am calling the webservicemanager class here
    [webService userStatusUpdateGet:@"1" endLimit:@"10" setSessionID:[[UserSession getInstance] SESSION_ID]];
//am printing.....
nslog(@"printing result %@",webService.test);

этот тест представляет собой массив из класса webServiceManager, который должен возвращаться только после перехода к - (void)connectionDidFinishLoading:(NSURLConnection *)connection метод

как мне это сделать?. Спасибо

(использую запрос и ответ json)

Ответы [ 2 ]

1 голос
/ 08 апреля 2011

Разве (void)connectionDidFinishLoading:(NSURLConnection *)connection не является делегированным методом WebServiceManager? Если да, он должен быть доступен в вашем классе, где вы можете реализовать действие метода

0 голосов
/ 08 апреля 2011

Создайте протокол для ваших контроллеров представления для обратных вызовов при получении данных. Реализация контроллера представления обновит отображение соответствующим образом.

EDIT:

Создать протокол:

@protocol WebServiceDelegate <NSObject>
@optional
- (void) serviceSuccessful: (BOOL)success withData:(NSMutableData*)data;

Создать класс с делегатом объекта этого протокола. Также создайте метод в этом классе, который будет вызываться вашим viewController, чтобы начать настройку соединения:

@interface WebServiceHandler : NSObject {

id <WebServiceDelegate> delegate;}

Записать всю реализацию метода делегата соединения в классе WebServiceHandler. В connectionDidFinishLoading установите объект делегата:

[[self delegate] serviceSuccessful:YES withData:webData];

Сделайте ваш viewController соответствующим протоколу WebServiceDelegate и предоставьте реализацию метода serviceSuccessful. Теперь этот метод будет вызываться в viewController, как только класс WebServiceHandler завершит получение данных из соединения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...