Я хотел бы перезагрузить табличное представление условно на основе значения сегментированного элемента управления при нажатии кнопки.
Итак, в моем методе buttonTapped у меня есть этот код, который случайным образом выбирает элемент массива. В блоке else
я хотел бы удалить выбранный элемент из массива, чтобы предотвратить повторный выбор того же элемента, в настоящее время я удаляю его из массива...
Но я хотел бы иметь возможность вернуть приложение в состояние до нажатия кнопки, возможно, сделав -mutableCopy
массива, а затем удалив из него элемент.
Какие возможные варианты у меня есть, чтобы указать, что элемент нельзя выбрать снова? Серым цветом? Изменение цвета? Удалить строку?
if (selectionControl.selectedSegmentIndex == 0) {
int r = arc4random() % [[[APP_DELEGATE itemsDictionary] objectForKey:category] count];
NSLog(@"%i",[[[APP_DELEGATE itemsDictionary] objectForKey:category] objectAtIndex:r]);
} else {
//copyOfArray = [APP_DELEGATE.....]mutableCopy]; // Maybe?
int r = arc4random() % [[[APP_DELEGATE itemsDictionary] objectForKey:category] count];
NSLog(@"%i",[[[APP_DELEGATE itemsDictionary] objectForKey:category] objectAtIndex:r]);
}
[[[APP_DELEGATE itemsDictionary] objectForKey:category] removeObjectAtIndex:r];
//[copyOfArray removeObjectAtIndex:r]; // Maybe?
[self.tableView reloadData];
}
В каждом из методов tableView мне нужно будет проверить состояние selectionControl, прежде чем возвращать значение либо из APP_DELEGATE, либо из копии.
Спасибо.