gpt4 book ai didi

ios - 在没有质量损失的情况下调整 UILabel 的大小

转载 作者:IT王子 更新时间:2023-10-29 05:53:48 25 4
gpt4 key购买 nike

我希望能够使用 UIPinchGesture 调整 UILabel 的大小,而不会有质量损失。目前我可以调整它的大小,尽管它变得非常模糊。

这是我的代码

label = UILabel(frame:CGRectMake(0,100,300,50))
label.text = "Hellow World"
label.textColor = UIColor.blueColor()
label.font = UIFont(name: "HelveticaNeue-Bold", size: self.label.frame.height)
self.view.addSubview(label)

self.resizeRecognizer = UIPinchGestureRecognizer(target: self, action: Selector("handleScale:"))
self.rotateRecognizer = UIRotationGestureRecognizer(target: self, action: Selector("handleRotate:"))

label.userInteractionEnabled = true
label.addGestureRecognizer(self.resizeRecognizer)

这是我的手势识别器

func handleScale(recognizer: UIPinchGestureRecognizer)
{
recognizer.view!.transform = CGAffineTransformScale(recognizer.view!.transform,
recognizer.scale, recognizer.scale)
recognizer.scale = 1
recognizer.view!.frame = CGRectMake(recognizer.view!.frame.minX, recognizer.view!.frame.minY, recognizer.view!.frame.width, recognizer.view!.frame.height)

println(recognizer.view!.frame)
println(self.label.font.fontWithSize(recognizer.view!.frame.height))
println(self.label.frame)

}

这里需要做的是当标签框架缩放时,文本的大小也需要改变。所以当我改变框架时,字体大小应该改变 label.font = UIFont(name: "HelveticaNeue-Bold", size: self.label.frame.height)

这就是我的目的

<UICTFont: 0x7ffb39e17ba0> font-family: "Helvetica Neue"; font-weight: bold; font-style: normal; font-size: 578.77pt
<UICTFont: 0x7ffb3ca03ed0> font-family: "Helvetica Neue"; font-weight: bold; font-style: normal; font-size: 594.29pt

字体大小确实会随着框架的调整而调整,我已经尝试从一开始就调整字体大小并且它呈现清晰。我认为正在发生的事情是,实际标签不会再次重新呈现。有谁知道发生了什么或如何解决它?

编辑:

顶部的文字是我想要在缩放后发生的事情,底部的文字是正在发生的事情

Top = Correct, Botton = Incorrect

我实现这一点的方法是我创建了一个新标签,其大小与旧标签相同,然后将其添加到 subview 中,我希望能够在重新缩放时执行此操作,如果这有意义的话

最佳答案

我认为您没有更新字体大小,fontWithSize 返回您应该分配给标签的字体。

  func handleScale(recognizer: UIPinchGestureRecognizer)
{
self.test.transform = CGAffineTransformScale(self.test.transform, recognizer.scale, recognizer.scale)
recognizer.scale = 1


println(recognizer.view!.frame)


self.test.font = self.test.font.fontWithSize(recognizer.view!.frame.height)
println(self.test.font)
println(self.test.frame)


}

关于ios - 在没有质量损失的情况下调整 UILabel 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27741084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com