Почему метод, который я должен перезагрузить строку в таблице, перезагрузить только один раз? - PullRequest
0 голосов
/ 03 апреля 2012

Я работал над этим часами, но безрезультатно, у меня есть метод, который в viewWillAppear перезагружает раздел таблицы. Однако после первой перезагрузки метод, похоже, больше не работает. Я знаю это, потому что я поместил NSLog в метод cellForIndex. Если это имеет значение, я нажимаю и нажимаю на панель навигации.

- (void)viewWillAppear:(BOOL)animated {
    NSLog(@"START TIME:%@", eSTime);
    NSLog(@"END TIME:%@", eEtime);
    NSIndexPath* rowToReload = [NSIndexPath indexPathForRow:0 inSection:1];
    reloadRows = [NSArray arrayWithObjects:rowToReload, nil];
    [self.tableView reloadRowsAtIndexPaths:reloadRows withRowAnimation:UITableViewRowAnimationNone];
}

1 Ответ

0 голосов
/ 03 апреля 2012

Скорее всего, это связано с тем, что по какой-то причине контейнерное представление контроллера представления только сообщает ему, что оно появляется один раз.

Контроллер представления, в который вы поместили это, несет ответственность за то, чтобы сообщить ему, когда он появится и появился, и был ли это в анимационном стиле.

Если по какой-то причине контроллер представления не вызвал этот метод правильно после первого появления, контроллер представления только один раз получит при вызове -viewWillAppear: метод, и, следовательно, перезагрузка произойдет только один раз.

Таким образом, возникает вопрос: как вы показываете этот контроллер представления? Это в контейнере, который вы сделали сами, или в UINavigationController, или что-то еще?

...