Как работать с классами размеров с моделью представления в приложениях iOS?

Мне было интересно, как правильно обрабатывать классы размеров в моем приложении для iOS. У меня было 2 разных дизайна.

Следует ли управлять этим в контроллере представления или в модели представления? Нужно ли встраивать коллекцию Trait в модель представления?


person CarlosAndres    schedule 08.05.2017    source источник
comment
вы можете использовать AutoLayout и поиграть с ограничениями. Вы также можете построить все, используя код, и просто переопределить didLayoutSubviews везде, чтобы вернуть правильные размеры на основе некоторого логического значения.   -  person dirtydanee    schedule 08.05.2017


Ответы (1)


По сути, UIViewController — это представление в MVVM. ViewModel не нужно ничего знать о классе размера, потому что он не определяет макет. Вид делает. Это то же самое, что и цвет текста. Вы устанавливаете цвет в представлении, а не в модели представления.

person Kryštof Matěj    schedule 08.05.2017
comment
Но если мне нужно показать строку с форматом в зависимости от класса размера, следует ли ее поместить в UIViewController, как я могу протестировать этот код? - person CarlosAndres; 10.05.2017
comment
Например, вы можете сделать класс Formatter и тесты для него. В UIViewController вы можете просто использовать его. - person Kryštof Matěj; 11.05.2017
comment
Другой пример, если мне нужно показать коллекцию с разными ячейками и разделами в зависимости от класса размера. Должно ли это контролироваться контроллером представления и запрашивать данные только у ViewModel? Правильно ли проводить модульное тестирование кода, связанного с классами размеров? - person CarlosAndres; 20.06.2017