Я работаю над приложением для создания диаграмм, которое отображает прямоугольники в виде подпредставлений в увеличенном виде.Пользователь может перемещать коробки.Я сохраняю позиции этих блоков, используя основные данные, в базу данных sqlite, удерживая высоту, ширину, x и y (в верхнем левом углу).Когда я открываю диаграмму, я читаю эти значения из базы данных и использую их, чтобы установить рамку подпредставления в главном представлении.
В портретном режиме это работает нормально, и ящики перемещаются в правильные точкина дисплее.Однако, когда я поворачиваюсь в альбомную ориентацию или запускаю приложение в альбомной ориентации и открываю диаграмму, положения блоков неправильны.
Я проследил код и вижу, что правильные значения возвращаются изпостоянное хранилище и используется для правильной установки кадра.Однако, как только UIView для подпредставления появляется на экране, оно располагается в другом месте (ясно видно и подтверждается проверкой значений в рамке представления).
Теперь странным является то, что вместофиксированное смещение в пикселях, координата x всегда на 8,5% больше значения, используемого для создания кадра, а значение y всегда на 9,1% меньше.
У кого-нибудь есть объяснения, почему это можетбыть и как я мог бы решить эту проблему?
Если он предоставляет какие-либо подсказки, основной вид находится внутри UIScrollView.