Масштаб UIView и всех его детей
У меня есть UIView с примерно 50 UIButtons. Все позиции кнопок были заданы в пикселях относительно левого верхнего угла моего основного UIView.
Все (фоновые) изображения, используемые в представлении, доступны в более высоком разрешении. Поскольку я переношу свое приложение с iPhone на iPad, я хотел бы увеличить эффективный размер пикселя UIView.
Теперь я ищу способ увеличить масштаб UIView в 2 раза. Возможно ли это без разрушения положения внутренних элементов?
FYI, UIView разработан в NIB файле в XCode. Но я не против, если это можно сделать программным путем.
Ответы
Ответ 1
В итоге я использовал
self.view.transform = CGAffineTransformScale(CGAffineTransformIdentity, 2, 2);
Это позволило мне сохранить дизайн, созданный в Interface Builder.
К сожалению, резкость изображения страдает в этом случае, но это небольшая цена для оплаты по сравнению с программным программированием всей программы.
Ответ 2
Обновление для Swift 3.0
self.view.transform = CGAffineTransform(scaleX: 2.0, y: 2.0)
Ответ 3
Сначала вы можете программно создать такие кнопки, как пример, создать эти кнопки с помощью метода CGRectMake
и указать ширину и высоту, чтобы они были X и Y, и умножить на 2, если ipad обнаружен как источник, он должен соответственно измениться, возможно вызывают перекрытие, если слишком близко друг к другу
Изменить: все зависит от вашей логики, im unsure too