Вам нужно будет самостоятельно составить список, чтобы определить, какие ячейки следует проверять или нет. Помните, что в tableView:cellForRowAtIndexPath:
правильная реализация будет перезапускать ячейки, так что вам никогда не придется создавать более 10-15 ячеек. Это может привести к некоторым интересным результатам, если вы не справитесь с этим должным образом. Когда я сделал плохую реализацию, я увидел, что некоторые свойства ячеек «переносятся» из одной ячейки в другую.
В любом случае, вот что я бы порекомендовал (основываясь на том, что, по-моему, вы спрашиваете):
1. Создайте класс для поддержки каждого UITableViewCell
2. Создайте свойство в этом классе, чтобы определить, какие из двух флажков (или ни один, ни оба) должны быть отмечены.
3. В вашем ViewController / TableViewController сохраните NSMutableArray / NSArray, где 1 элемент в массиве = 1 ячейка в UITableView.
4. В вашем методе tableView:cellForRowAtIndexPath:
получите ссылку на соответствующий элемент в вашем массиве.
5. Затем проверьте свойства этого экземпляра и установите соответствующие значения флажков.
Пример кода:
TableView.h
@interface TableView : UITableViewController
@property (strong, nonatomic) NSMutableArray *itemArray;
@end
TableView.m
@implementation TableView
@synthesize itemArray;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// Assume you get a valid, custom UITableViewCell at this point (named "cell")
// Configure the cell...
NSObject *classItem = [[self itemArray] objectAtIndex:[indexPath row]];
[[cell checkBox1] setChecked:[classItem checkbox1Checked]];
[[cell checkBox2] setChecked:[classItem checkbox2Checked]];
return cell;
}
@end