В целом, моя цель - представить пользовательский UIViewController на экране как своего рода «виджет». Вид будет анимирован, начиная с его центра в начальной точке моего корневого вида, а затем перемещайте вид до тех пор, пока он не окажется в центре корневого вида. Этот представленный вид должен иметь возможность анимировать свою собственную высоту и ширину.
В настоящее время я использую ViewController вместе с UIPopoverPresentationController
, который имеет пользовательский пустой и прозрачный popoverBackgroundViewClass
. Я использую поповерный контроллер, чтобы я мог использовать preferredContentSize
моего viewController как способ, позволяющий «вытолкнутым» в поле зрения легко изменять свою собственную высоту и ширину. (Если контроллер презентации поповер не подходит для обработки чего-то подобного, я хотел бы знать)
Проблема, с которой я столкнулся при использовании UIPopoverPresentationController
, заключается в том, что я могу установить его положение с помощью self.popoverPresentationController.sourceRect = CGRectMake(point.x, point.y, 0,0);
, где point
относится к CGPoint, который определяет центр представления всплывающего окна. Если бы я мог каким-то образом оживить центр этого поповерного представления из одной точки в другую, это решило бы все мои проблемы, но я бы не смог придумать ничего, что могло бы сделать эту работу.
Я не могу сказать, является ли это моей неопытностью в такого рода вещах, но каждый использованный мною подход просто кажется хакерским, поэтому любая помощь по правильному подходу очень ценится.