В Интерфейсном Разработчике у меня есть простое представление, которое содержит UIImageView и я пытаюсь ограничить ширину и высоту представления изображения. Я добавил ограничения несколькими способами, но всякий раз, когда я запускаю в симуляторе, представление изображения отображается некорректно, но всегда принимает размеры изображения PNG, размеры которого меньше, чем у устройства симулятора. Режим содержимого для представления изображения - «Масштабировать до заполнения». Я загружаю xib следующим образом:
VCMain *vc = [[VCMain alloc] initWithNibName:@"Main" bundle:nil];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:vc];
navController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
navControllermodalPresentationStyle = UIModalPresentationFullScreen;
[self presentViewController:navController animated:YES completion:nil];
Я попытался ограничить представление изображения суперпредставлением и ограничить его безопасной областью, но ничего не изменилось. Независимо от того, какой выбор я выбрал, консольная печать показывает, что безопасная область всегда принимает размеры представления изображения (что странным образом принимает размеры файла png, даже если для параметра установлено значение Масштабировать до заполнения).
I также проверил назначение изображения больше размеров симулятора (используя iPhone Xs кстати) и меньше. На фотографиях ниже вы можете видеть, что изображение не соответствует ограничениям.
Что я делаю не так? И почему Безопасная зона соответствует скорее размеру изображения? Ниже приведены фотографии IB, которые показывают настройки, а затем фотографии, показывающие, как симулятор рендерит вещи.
Когда я использую изображение меньше, чем устройство Simulator Размеры я получаю так:
and though you can't see, the Safe Area dimensions are {{0, 0}, {320, 480}}, exactly the size of the PNG.
When I use a version of the image much larger than the Simulator device's dims I get:
и снова размеры Безопасной области в точности соответствуют размеру PNG, в данном случае {{0, 0}, {2133, 2789}}, даже несмотря на то, что основной вид там имеет затемнения { {0, 0}, {375, 812}}