Ваш метод cellForRowAtIndexPath в контроллере табличного представления, вероятно, имеет две строки, например:
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
Эти строки пытаются повторно использовать ранее созданную / отформатированную ячейку. Чтобы прекратить это повторное использование, удалите эти строки и вместо этого просто всегда выделяйте новую ячейку (то есть что-то, эквивалентное приведенному ниже).
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
Затем, когда вы выполняете [tableView reloadData] в своем методе viewWillAppear, он всегда будет создавать новые ячейки для каждой строки, а не пытаться повторно использовать старые.