У меня есть UICollectionView в моем приложении. Каждая ячейка составляет примерно треть ширины экрана (в портретной ориентации) и имеет квадратную форму. Внутри каждой ячейки находится UIImageView, режим которого установлен на «Масштабировать для заполнения» (в IB) и имеет ограничения на каждом ребре, которые заставляют его заполнять ячейку.
В iOS 7 и 8 изображения идеально заполняли каждую ячейку.
В iOS 9 масштабирование меняется каждый раз, когда появляется представление, а иногда и при нажатии на ячейку:
- изображения иногда маленькие и располагаются в верхнем левом углу
- изображения иногда масштабируются, чтобы заполнить, как они должны.
- изображения иногда масштабируются немного больше, чем ячейка, и изменяют размер при выборе ячейки.
- изображения иногда полностью исчезают при выборе ячейки.
Если это как-то имеет значение, изображение устанавливается в методе cellForItemAtIndexPath
представления коллекции следующим образом:
cell.artImageView.image = artImage;
Где «artImage» — это UIImage. (Обь-С).
UIImageView довольно просты и понятны. Apple «улучшила» их с помощью какого-то нового свойства, которое мне нужно установить? Здесь действительно застрял.
Обновление: попытался воспроизвести это в новом проекте и не смог. Какой-то странный остаточный IB juju. Но полная замена контроллера представления коллекции, представления ячеек и изображений в IB не решила проблему.