Это зависит от сложности вашего пользовательского элемента управления: если вам нужно обрабатывать много бизнес-логики / данных внутри него, то у этого представления должна быть своя собственная модель представления
Думать об этом такв приложении у нас есть контроллеры представления, контроллер представления - это просто представление, и у нас есть модель представления для него. Поэтому, когда контроллер представления настолько сложен, мы можем разделить его на меньшие представления с их собственными моделями представлений, ячейка табличного представления может иметь свою модель представления, если это необходимо, это похоже на ваш случай здесь.
Так что мы могли быесть модель представления, подобная этой
class CustomControlViewModel: NSObject {
var data: String!
var flag: Int!
init(data: String, flag: Int) {
self.data = data
self.flag = flag
}
}
И данные контролируются внутри ViewControllerViewModel
func createCustomControlViewModel() -> CustomControlViewModel {
return CustomControlViewModel(data: "data from view model", flag: 1)
}
Надеюсь, этот ответ поможет вам