2012-01-02 2 views
1

Я создал на UITableView, в котором, нажав на любую ячейку (-didSelectRowAtIndexPath), вызывает WebService, связанный с этой ячейкой.Где написать запрос к WebService

Проблема заключается в обработке ответа JSon, Запрос возвращается. Откуда я должен обрабатывать этот ответ?

Поскольку вид изменяется, когда я нажимаю на ячейку таблицы (-didSelectRowAtIndexPath); Я должен передать всю информацию ответа на следующее представление.

Вопрос: должен ли я позвонить службе после нажатия на ячейку и перед загрузкой следующего вида. Или придерживайтесь этого способа (что делает мой код неуправляемым.)

Какое событие наиболее подходит для обработки этого объекта (-didSelectRowAtIndexPath) или (-viewDidLoad) следующего вида?

Любые предложения?
Спасибо.

ответ

1

Как только строка была выбрана, выделите NextViewController. Сообщите NextViewController, что строка была выбрана путем написания метода setter в NextViewController. В этом методе setter запустите свой запрос. Затем нажмите на NextViewController.

Вы можете обработать веб-запрос в NextViewController, как показано на рисунке, вы можете перезагрузить представление в зависимости от ответа.

Редактировать

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NextViewController *detailViewController = [[NextViewController alloc] initWithNibName:@"NextViewController" bundle:nil]; 
    id obj = [_list objectAtIndex:indexPath.row]; 
    //[detailViewController startWebRequest]; 
    [detailViewController startWebRequestWithObject:obj]; 
    [self.navigationController pushViewController:detailViewController animated:YES]; 
    [detailViewController release]; 
} 

Если вам нужно передать какой-либо объект, передать его методу. В методе запустите webrequest. И обработайте ответ в NextViewController.

+0

Не могли бы вы подробнее рассказать, я смущен. – viral

+0

Я обновил свой ответ. Пожалуйста, см. Это. – Ilanchezhian

+0

Извините за проблему :), но мой NextView загружается до того, как ответ будет завершен. И проблема в том, что мне нужно создать свой пользовательский интерфейс на основе этого ответа. Есть ли какая-нибудь идея, как я могу это сделать? – viral

Смежные вопросы