У меня есть подкласс UIView, который имеет свойство, называемое originalFrame.Как сохранить исходный фрейм подкласса UIView, загруженный из раскадровки автоматически
Я хочу, чтобы этот класс сохранил оригинал, это оригинальное значение фрейма после загрузки с раскадровки.
Я переопределен метод awakeFromNib:
-(void)awakeFromNib
{
self.originalFrame = self.frame;
}
Это работает, если вид контроллера представления его обособленно не изменяется сразу после того, чтобы соответствовать размеру экрана.
Тем не менее, контроллеры представлений в моем раскадровке предназначены для iPhone 4-дюймового экрана, поэтому, когда приложение работает на iPhone 3,5-дюймовый экран, awakeFromNib вызывается до того, как вид контроллера просмотра будет изменен в соответствии с 3,5-дюймовым экраном , Если мое подвью не привязано к вершине, то свойство originalFrame не будет отражать его фрейм после изменения размера.
Я смог переопределить layoutSubviews, чтобы получить свойство кадра после изменения размера представления контроллера представления, но этот метод также называется другим, и у меня нет способа узнать, соответствует ли начальный размер размеру экрана или что-то другое.
Есть ли способ сделать это без необходимости устанавливать это свойство вручную в каждом конкретном случае в методе viewDidLoad контроллера вида?