Как сделать так, чтобы в моих ячейках UITableView всегда было == nil, когда происходит viewWillAppear? Я хочу полностью перезагрузить все мои сотовые представления - PullRequest
0 голосов
/ 03 ноября 2011

Как мне сделать мои ячейки UITableView == nil (сделать их не кэшированными), когда происходит viewWillAppear?Я хочу полностью перезагружать все свои сотовые представления каждый раз, когда я прихожу к представлению.Основная причина в том, что фоновое изображение ячеек может измениться из-за «тем», которые я добавляю в приложение.

[tblView reloadData] не работает с кэшированными представлениями в ячейке.

Ответы [ 3 ]

1 голос
/ 03 ноября 2011

Ваш метод cellForRowAtIndexPath в контроллере табличного представления, вероятно, имеет две строки, например:

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

Эти строки пытаются повторно использовать ранее созданную / отформатированную ячейку. Чтобы прекратить это повторное использование, удалите эти строки и вместо этого просто всегда выделяйте новую ячейку (то есть что-то, эквивалентное приведенному ниже).

cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];

Затем, когда вы выполняете [tableView reloadData] в своем методе viewWillAppear, он всегда будет создавать новые ячейки для каждой строки, а не пытаться повторно использовать старые.

0 голосов
/ 03 ноября 2011

Я бы использовал -tableView:willDisplayCell:forRowAtIndexPath:, чтобы определить и установить фоновые изображения вашей ячейки прямо перед их отображением на экране.Очевидно, вы захотите использовать свой источник данных, чтобы определить, какой фоновый вид должен отображаться.

0 голосов
/ 03 ноября 2011

Перед вызовом reloadData , просто позвольте tableView: numberOfRowsInSection: сначала вернуть 0.

Тогда в вашей таблице вообще не будет строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...