Используя раскадровку, у меня есть контроллер табличного представления, содержащий несколько ячеек динамического прототипа. Одна из ячеек представляет собой пользовательскую динамическую ячейку-прототип (для которой я создал подкласс), содержащую метку и переключатель. У меня есть действие для переключателя, связанное с методом действия (скажем, switchChanged:) в контроллере представления. В cellForRowAtIndexPath я настраиваю и возвращаю ячейку, соответствующую указанному индексу. Все идет нормально.
Проблема: в моем приложении есть несколько экземпляров этих настраиваемых ячеек, так как мне отличить, какой переключатель изменился? Одна мысль состоит в том, что в контроллере представления я могу создать переключатель-член для каждой ячейки и связать их с конкретным переключателем ячейки, когда cellForRowAtIndexPath вызывается в первый раз. Затем я могу использовать эти переключатели-члены для сравнения с переключателем, переданным в switchChanged:.
Я знаю, что могу попробовать и получить немедленный ответ, но я надеялся на обсуждение того, как другие разработчики делают то, что я пытаюсь сделать. Является ли это лучшим/худшим/хорошим подходом и каковы практические альтернативы?
С уважением,
--Джон