Мне интересно, есть ли способ масштабирования UIView и всех его подзонов.Масштабирование вида и всего его содержимого
Когда я говорю о масштабировании, я говорю не только о кадрах, я бы не масштабировал все, чтобы шрифты тоже.
На данный момент я делаю это вручную:
-(void)setScale:(float)scale
{
// Apply scale on all subviews
myLabel.font = [UIFont myFontWithSize:baseSize*scale];
[myButton setScale:scale]
[myCustomView1 setScale:scale]
[myCustomView2 setScale:scale]
}
-(void)layoutSubviews
{
// Apply scale on layout
myIcon.frame = CGRectMake(posX, posY, baseW*scale, baseH*scale);
[...]
}
Но метод setScale должен быть определен во всех моих взглядов, это довольно утомительно.
И у меня есть некоторые проблемы, когда я wan't масштабировать некоторые HTML текст, отображаемый с UIWebView, это содержание не может быть так легко масштабируется ...
Я попробовал другой способ тоже: когда мое представление масштабируется, оно не принимает userInteraction, поэтому я попытался сделать снимки, изображения намного проще масштабировать. Но это было слишком тяжело для моей памяти iphone, особенно когда взгляды, которые я не масштабировал, являются сотнями uicollectionviewCells.
Есть ли более быстрый способ сделать это?