我的ViewController中有一个UIView,用户可以在屏幕上移动,旋转和放大和缩小。全部使用UIGestureRecognizers。
我遇到的问题是UIView包含UILabel,缩放后标签非常模糊。
以下是缩放的代码:
@IBAction func handlePinch(recognizer : UIPinchGestureRecognizer) {
recognizer.view!.transform = CGAffineTransformScale(recognizer.view!.transform, recognizer.scale, recognizer.scale)
recognizer.scale = 1
}
此外,当用户离开屏幕时,我正在保存新位置并转换UIView,如下所示:
func saveViewValues() {
var userDefaults:NSUserDefaults = NSUserDefaults.standardUserDefaults()
userDefaults.setObject(NSStringFromCGPoint(self.theView.center), forKey:kViewCenter)
userDefaults.setObject(NSStringFromCGAffineTransform(self.theView.transform), forKey:kViewTransform)
userDefaults.synchronize()
}
这样当我重新加载页面时,我可以使用这些值将UIView重置为用户上次使用它的方式。
一切正常,但如果用户放大视图,UILabel会非常模糊。
有没有办法让文字变得清晰,即使在缩放时也是如此?我如何像其他人一样保存这个值,以便之后可以放回来并直接清脆?
希望这是有道理的。