Если вы определяете ограничения, вам не нужно указывать рамку CGRect для вашего дизайна. На самом деле лучшим способом является использование NSLayoutConstraints. Причина в том, что вы устанавливаете кадр CGRect, когда ваше устройство вращается большую часть времени, когда ваш CGRect может быть неправильным. По крайней мере, высота и с. Но если вы используете ограничения, когда ваше устройство вращается, он автоматически будет отображать субвью. Это означает, что представления будут изменяться в соответствии с ограничениями.
Когда вы устанавливаете кадр CGRect, что он делает, он меняет положение и размеры вида независимо от ограничений. Затем, если вы попытаетесь вызвать view.layoutIfNeeded()
или измените ориентацию, представления будут перегруппированы в соответствии с ограничениями, независимо от того, какой кадр был установлен ранее.
довольно аккуратный ответ, но было бы здорово, если бы оно могло появиться с некоторыми образцами кодирования;) @LIH –