字体大小为0或1(swift3)

时间:2017-09-20 23:14:27

标签: ios swift uifont

我在项目中使用OpenSans字体但是当我将其大小调整为大于1的值时,其大小不会改变。如果我将其大小设置为0,它就会消失。我不明白为什么它会那样。任何人都可以向我解释一下吗?

以下是代码:

let RememberMe = UILabel(frame: CGRect(x: checkbox.frame.maxX + view.frame.width*0.05, y: 0, width: ForgetPasswordcontainer.frame.width*0.3, height: ForgetPasswordcontainer.frame.height/2))
RememberMe.text = "Remember Me"
RememberMe.font = UIFont(name: "OpenSans-Regular", size: 1)
RememberMe.textColor = Colors().blue
RememberMe.baselineAdjustment = .alignCenters
RememberMe.adjustsFontSizeToFitWidth = true
RememberMe.textAlignment = .center
ForgetPasswordcontainer.addSubview(RememberMe)

3 个答案:

答案 0 :(得分:0)

由于这条线,它没有改变:

RememberMe.adjustsFontSizeToFitWidth = true

无论您将大小设置为什么,一旦到达该行,您将再次调整字体大小以适合文本所包含的标签。删除该行或更改标签的框架。此外,由于它是自定义字体,因此您需要确保已在Info.plist中注册该字体。

答案 1 :(得分:0)

它为我工作。请检查:

RememberMe.font = UIFont(name: "Open Sans", size: 10)

并将TTF文件添加到目标中。

答案 2 :(得分:0)

嘿,看看下面的代码

  let RememberMe = UILabel(frame: CGRect(x: 10, y: 50, width: self.view.frame.size.width  , height: 100))
        RememberMe.text = "Remember Me"
        //This add you to selected font and of minimum size which will be adjusted to width itself so no .. appears
        RememberMe.font = UIFont(name: "OpenSans-Regular", size: 1000)
        RememberMe.textColor = UIColor.blue
        RememberMe.baselineAdjustment = .alignCenters
        //Need to add this externally if you want to explicitly increase label size
        RememberMe.font = UIFont.systemFont(ofSize: 100)
        RememberMe.adjustsFontSizeToFitWidth = true
        RememberMe.textAlignment = .center
        self.view.addSubview(RememberMe)

输出: enter image description here

1)必须看到你提供的框架并且这是正确的我认为你在其他子视图中使用这个标签

2)需要提供RememberMe.font = UIFont.systemFont(ofSize:100),以便为要添加的系统标签提供一个大小,以明确增加最小系统字体大小

希望有所帮助