Вызовите TableView: didSelectRow: AtIndexPath в viewDidLoad - PullRequest
0 голосов
/ 07 декабря 2011

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

Так я и сделал:

 [self.tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0] animated:YES scrollPosition:UITableViewScrollPositionTop];

Это работает нормально, и строка выделена, , но Я также хочу, чтобы вызывался метод TableView: didSelectRow: AtIndexPath, чего пока нет.

Есть идеи?

Спасибо!

Ответы [ 2 ]

4 голосов
/ 07 декабря 2011

Поскольку вы знаете строку, которую вы выбираете, вы можете просто вызвать метод, который вызывается в tableView:didSelectRowAtIndexPath напрямую. Или вы можете позвонить tableView:didSelectRowAtIndexPath самостоятельно:

NSIndexPath *initialIndex = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView selectRowAtIndexPath:initialIndex
                            animated:YES 
                      scrollPosition:UITableViewScrollPositionTop];
[self tableView:self.tableView didSelectRowAtIndexPath:initialIndex];
0 голосов
/ 07 декабря 2011

Я знаю, это звучит глупо, но почему бы не назвать это самим? У меня была такая же проблема с загрузкой представления вручную, а затем мне пришлось также вызывать onLoad вручную:)

[self tableView:self.tableView didSelectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];

не уверен, что я правильно понял синтаксис, но вы поняли

...