Я создал переключатель в cellForRowAtIndexPath вот так.
UISwitch *switchView = [[UISwitch alloc] initWithFrame:CGRectZero];
CGRectZero эквивалентен CGRectMake (0,0,0,0). Но, виден переключатель в нормальном размере. Актуальный размер я не указал. Пожалуйста, объясните мне, как работает приведенный выше код.
2 ответа
UISwitch не настраивается, это касается и размера.
UISwitch отменяет initWithFrame:
и устанавливает размер, соответствующий элементу управления. Компоненты размера данного прямоугольника игнорируются.
Любой объект UIView может переопределить размер кадра, реализовав sizeThatFits: метод UIView. Фактически, справочник по классу UIView Говорит, что:
объект UISwitch возвращает значение фиксированного размера, которое представляет стандартный размер представления переключателя
Похожие вопросы
Новые вопросы
iphone
НЕ ИСПОЛЬЗУЙТЕ этот тег, если вы не обращаетесь конкретно к iPhone и / или iPod touch от Apple. Для вопросов, не зависящих от оборудования, используйте тег [ios]. Больше тегов, которые нужно рассмотреть, это [xcode] (но только если вопрос касается самой IDE), [swift], [target-c] или [cocoa-touch] (но не [cocoa]). Пожалуйста, воздержитесь от вопросов, касающихся iTunes App Store или iTunes Connect. Если вы используете C #, пометьте [mono].