Как установить динамическую ширину и высоту представления в автозапуск в iOS?

У меня есть UIView в моем супер-представлении. Я установил его с некоторыми ограничениями. Теперь я хочу, чтобы размер представления должен отличаться на разных устройствах. Если я устанавливаю ширину и высоту fix, то я получаю неправильный результат. Я пытался использовать пользователя но это делает слишком большим или слишком маленьким изображение на нескольких устройствах.

Я хочу, чтобы высота и ширина увеличивались в равной пропорции, чтобы он выглядел одинаково на всех устройствах. Я хочу иметь гибкую высоту и ширину вида. Пожалуйста, расскажите, как это сделать?

Вот изображение введите описание изображения здесь

Заранее спасибо

Используйте классы размера. Это помогает иметь разные настройки для разных устройств. http://www.raywenderlich.com/83276/beginning-adaptive-layout-tutorial https://youtu.be/IwSTXY0awng?t=2m12s

введите описание изображения здесь Самый простой способ – создать Outlet вашего ограничения width и height .

Затем динамически измените его в viewDidLoad соответствии с телефоном.

Чтобы проверить, какой телефон у вас, вы можете проверить высоту устройства, например 480 для iPhone 4S, 568 для iPhone 5,5S и т. Д.

 @interface ScoreListViewController (){ @property (weak, nonatomic) IBOutlet NSLayoutConstraint *widthConstraint; @property (weak, nonatomic) IBOutlet NSLayoutConstraint *heightConstraint; @end - (void)viewDidLoad { [super viewDidLoad]; // Set the value according to your requirement if(4S){ self.heightConstraint.constant=100; } } 

Попробуйте выполнить снимки экрана, как показано ниже:

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

введите описание изображения здесь

Вы получите результат, как показано ниже.

введите описание изображения здесь

Я написал статью в блоге об автоаудитации для динамически изменяющихся макетов.
Для каждого размера экрана вы можете программно добавлять ограничения.
Алгоритм

  1. Получить текущий размер устройства
  2. Получите требуемые ограничения в зависимости от размера устройства
  3. Затем программно добавьте ограничения

Изменение в соответствии с ориентацией

  • Прослушайте оповещение UIDeviceOrientationDidChangeNotification
  • Добавить новые ограничения в соответствии с уведомлением
  • Затем вызовите setNeedsUpdateConstraints
    Для получения дополнительной информации и кода примера просмотрите статью в блоге и этот репозиторий github
  • Как приостановить NSOperation в NSOperationQueue?
  • Программа разработчика iOS и / или программа для разработчиков Mac
  • Как получить часовой пояс пользователя?
  • Управление пропускной способностью iOS / OS X NSURLSession
  • Xcode - импорт другого файла заголовка с тем же именем на основе Target
  • CoreData: несколько разработчиков, версии и поддерживающие
  • Плавающий автозапуск iOS / OSX
  • Использование динамической библиотеки, загруженной LC_LOAD_DYLIB для вставки функций C
  • Функции расширения префикса
  • Данные переиндексирования CloudKit навсегда
  • Используйте что-то другое, кроме OS X Finder, чтобы закрепить приложение iPhone для отправки
  • Давайте будем гением компьютера.