2013-04-25 5 views
0

Когда загружается UITableView, я хочу, чтобы единственная строка в единственном разделе была выбрана так, чтобы код в didSelectRowAtIndexPath выполнялся немедленно, когда пользователь загружает UITableView. Я пробовал код ниже, но он не выполняет код в разделе didSelectRowAtIndexPath. Есть предположения?UITableView автоматически выбирает строку

NSIndexPath *indexedPath = [NSIndexPath indexPathForRow:0 inSection:0]; 
[tableView selectRowAtIndexPath:indexedPath animated:YES scrollPosition: UITableViewScrollPositionNone]; 

ответ

1

использовать этот code.This будет автоматически вызывать didSelectRowAtIndexPath когда вид загружен.

[self tableView:tableView didSelectRowAtIndexPath:[NSIndexPath indexPathForItem:0 inSection:0]]; 
+0

Я не могу использовать этот код, потому что пользователь должен физически нажать на строку для исполняемого кода. Цель состоит в том, чтобы выполнить код при загрузке представления. –

+0

Хорошо. Ну, значит, didSelectRowAtIndexPath не вызывает вызов пользователя? –

+0

Это сработало. Спасибо. –

0

Если вам нужно вызвать некоторые функции, которые вы используете в didSelectRowAtIndexPath вы можете сделать отдельный метод и поставить всю логику didSelectRowAtIndexPath в своем отдельном методе, а затем вызвать этот метод из обоих didSelectRowAtIndexPath и везде, где вы хотите вызвать тот же код?

И если вы хотите дополнительно вызвать событие в методе didSelectRowAtIndexPath, вам нужно вручную вызвать метод делегата, это не будет происходить автоматически:

[self tableView:self.tableView didSelectRowAtIndexPath:your_indexpath]; 

Надеется, что это помогает.

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