Пин-к-зум UILabel - PullRequest
       41

Пин-к-зум UILabel

5 голосов
/ 18 июня 2011

Я обрабатываю жест щепоткой и масштабирую UILabel следующим образом:

CGFloat factor = sender.scale;
view.transform = CGAffineTransformScale(view.transform, factor, factor);

Проблема в том, что когда я увеличиваю масштаб (увеличиваю метку), он не перерисовывается сам, то есть становится размытым. Как мне сделать это снова острым?

1 Ответ

2 голосов
/ 05 мая 2013

Причина, по которой это происходит, заключается в том, что преобразования применяются к визуализированному растровому изображению слоя представления.

Если вы хотите, чтобы содержимое метки масштабировалось, также отрегулируйте contentScale:

CGFloat scaleFactor = ...

view.layer.contentsScale = [UIScreen mainScreen].scale + scaleFactor;
view.transform           = CGAffineTransformMakeScale( scaleFactor, scaleFactor );
...