捏缩放UILabel

Mik*_*son 5 objective-c uilabel cgaffinetransform uigesturerecognizer ios

我正在处理一个捏手势,我正在缩放UILabel像这样:

CGFloat factor = sender.scale;
view.transform = CGAffineTransformScale(view.transform, factor, factor);
Run Code Online (Sandbox Code Playgroud)

问题是当我放大(使标签变大)时它不会重绘,即它变得模糊.如何让它再次锐利?

kar*_*wag 2

发生这种情况的原因是变换应用于视图层的渲染位图。

如果您想让标签的内容缩放,也可以调整contentsScale:

CGFloat scaleFactor = ...

view.layer.contentsScale = [UIScreen mainScreen].scale + scaleFactor;
view.transform           = CGAffineTransformMakeScale( scaleFactor, scaleFactor );
Run Code Online (Sandbox Code Playgroud)