Лучшая логика переключения для табличного представления - PullRequest
0 голосов
/ 15 августа 2011

Я мой табличный вид, я хочу переключить аксессуар с галочки, чтобы не иметь галочки (и обратно) - в настоящее время я делаю это так:

if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
    cell.accessoryType = UITableViewCellAccessoryNone;
}
else {
    cell.accessoryType = UITableViewCellAccessoryCheckmark;
}

Теперь я знаю, что есть лучший способ написать это, какие-нибудь предложения?

1 Ответ

2 голосов
/ 15 августа 2011

Единственная проблема, которую я вижу с тем, что у вас есть сейчас, заключается в том, что он использует ячейку для сохранения состояния. Решение о том, давать ли чек ячейке или нет, вероятно, должно основываться не на ячейке, а на данных, отображаемых в ячейке, например:

if (vehicle.selected) {
    cell.accessoryType = UITableViewCellAccessoryCheckmark;
else {
    cell.accessoryType = UITableViewCellAccessoryNone;
}

Если вы хотите сделать это немного более загадочным, вы можете:

cell.accessoryType = vehicle.selected ? UITableViewCellAccessoryCheckmark
                                      : UITableViewCellAccessoryNone;

Некоторые люди любят эту запись, другие ненавидят ее. Проверьте ваш местный документ по стандартам кодирования, чтобы узнать, является ли такой код приемлемым перед использованием.

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