Если вы используете пользовательские TableViewCells, общий
[self.tableView reloadData];
не эффективно ответить на этот вопрос если вы не оставляете текущий вид и вернуться обратно. И первый ответ.
Чтобы успешно перезагрузить свой первый вид таблицы ячейки без переключения видом, используйте следующий код:
//For iOS 5 and later
- (void)reloadTopCell {
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
NSArray *indexPaths = [[NSArray alloc] initWithObjects:indexPath, nil];
[self.tableView reloadRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationNone];
}
Вставьте следующий метод обновления, который вызывает к описанным выше способом, так что вы можете пользовательские перезагрузки только верхняя ячейка (или весь вид таблицы, если вы хотите):
- (void)refresh:(UIRefreshControl *)refreshControl {
//call to the method which will perform the function
[self reloadTopCell];
//finish refreshing
[refreshControl endRefreshing];
}
Теперь, когда у вас есть, что сортируется, внутри вашего viewDidLoad
оных следующее:
//refresh table view
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self action:@selector(refresh:) forControlEvents:UIControlEventValueChanged];
[self.tableView addSubview:refreshControl];
Теперь у вас есть пользовательская функция таблицы обновления, которая перезагрузит верхнюю ячейку. Чтобы перезагрузить всю таблицу, добавьте
[self.tableView reloadData];
к вашему новому методу обновления.
Если вы хотите перезагружать данные каждый раз при переключении представлений, реализовать метод:
//ensure that it reloads the table view data when switching to this view
- (void) viewWillAppear:(BOOL)animated {
[self.tableView reloadData];
}
придирки здесь, но, конечно, если бы вы только освежать одну ячейку вы, вероятно, хотите использовать `[NSArray arrayWithObject:]` вместо этого. – 2011-02-16 19:50:52
Кроме того, в этой ситуации «beginUpdates» и «endUpdates» не нужны. – kubi 2011-03-11 01:00:32
@ kubi привет, вы можете объяснить, почему они не нужны? – Unheilig 2013-07-14 17:24:37