Я думаю, что вы смущены ориентацией устройства и рамкой вида.
В большинстве случаев UIViews изменяются относительно изменения ориентации. Но, чтобы уточнить - это не из-за изменения ориентации, а из-за изменения макета.
Только UIViewControllers должны учитывать ориентацию устройства - UIViews не делают. Когда ориентация устройства изменяется, UIViewController захватывает событие из методов его экземпляра:
– willRotateToInterfaceOrientation:duration:
– willAnimateRotationToInterfaceOrientation:duration:
– didRotateFromInterfaceOrientation:
Затем UIViewController изменяет макет представлений, что приводит к изменению структуры UIViews. Во многих случаях iOS может помочь вам упростить процесс ретрансляции, установив UIViewAutoresizeMask. Например:
myWebview.autoresizeMask = UIVIewAutoresizeMaskFlexibleHeight | UIVIewAutoresizeMaskFlexibleHeight;
подразумевает, что когда суперпредставление веб-просмотра изменило свои границы, веб-просмотр изменится соответственно.
Как итог, UIView заботится только о своей рамке / границах и т. Д.