У меня есть классы размера, определенные для iPad и iPhone.Я использую Xcode 10.1 с последней версией Swift 4.2 на Mojave 10.14.1.Я тестировал симуляторы iOS 11.0.1 и 12.1, но без разницы.
Если я использую устройство iPhone в конструкторе интерфейсов, а затем запускаю на iPad, он будет отображать сетку с использованием класса размера iPhone, несмотря на то, чтоуже определенный размер для iPad.Это приводит к предупреждению об ограничениях в консоли.Класс размера iPad (R, R) имеет ширину / высоту, определенную в 100, но консоль заявляет, что активное ограничение равно 60, что является значением по умолчанию.Почему игнорируется класс размера?
Если я использую устройство iPad в конструкторе интерфейсов, а затем запускаю на iPad, на нем отобразитсясетка правильно, используя класс размера iPad.Нет предупреждений об ограничениях.
Если я использую устройство iPad в конструкторе интерфейсов, а затем запускаю на iPhone, он будет отображать сетку с использованием класса размера iPad, несмотря на то, что для iPhone уже задан размер.Это приводит к предупреждению об ограничениях в консоли.Класс размера iPhone по умолчанию имеет ширину / высоту по умолчанию, равную 60, и консоль заявляет, что активное ограничение равно 60, и нарушит его, чтобы использовать iPad размером 100. Почему он использует 100, когда это даже не правильный размер класса?
Если я использую устройство iPhone в конструкторе интерфейсов, а затем запускаю на iPhone, он правильно отображает сетку, используя класс размера iPhone.Нет предупреждений об ограничениях.
Хуже всего то, что существуют другие элементы, также определенные классами размеров, за исключением тех, которые не затронуты;только эти кнопки.
Так выглядят настройки для задействованных кнопок.
Я даже пытался добавить повторяющиеся значения для iPhoneно без разницыОни игнорируются, и он использует класс iPad (R, R), если я оставляю конструктор интерфейса с устройством iPad.
Я могу воспроизвестиТе же недопустимые сценарии на моем iPhone, так что, похоже, это не просто симуляторы.Я не использую какой-либо программный код вообще.Я удалил производные данные, сбросил симуляторы, закрыл / заново открыл Xcode, очистил папку сборки, удалил / повторно добавил ограничения, но без разницы.