簡體   English   中英

Swift 以編程方式更改字體

[英]Swift Changing font programmatically

嗨,我目前正在設置以下視圖:

func setupViews() {

    self.numberLabel = UILabel(frame: .zero) 
    self.addSubview(self.numberLabel)
    self.numberLabel.snp.makeConstraints { (make) in
        make.edges.equalToSuperview()
    }


    self.numberLabel.textAlignment = .center
    self.numberLabel.textColor = UIColor.white
    self.numberLabel.adjustsFontSizeToFitWidth = true
    self.numberLabel.minimumScaleFactor = 0.5

}

我想將標簽內文本的字體更改為粗體,但是按照上述語法原則,很難找到一種簡單的方法。

您只需設置標簽的字體屬性,例如:

numberLabel.font = UIFont.systemFont(ofSize: 10, weight: 200)

我很驚訝在這方面沒有任何關於 SO 的內容。

也看看參考文檔: https : //developer.apple.com/documentation/uikit/uilabel

順便說一句,除非您在閉包中操作,或者在語義不明確的其他上下文中(例如在初始化程序中),您通常不需要使用 self. 前綴。

希望有幫助。

如果您只是使用系統字體,您也可以這樣做

UIFont.boldSystemFont(ofSize: 16.0)

選擇您需要的任何尺寸

這是關於它的文檔

適用於 Swift5+ 及最新版本(Swift5.3)

風格化字體 (SystemFont)

UIFont.systemFont(ofSize: 17, weight: .medium)

您可以在其中設置.weight提供各種UIFont.Weight屬性,如下所示

  • .black
  • .bold
  • .heavy
  • .light
  • .medium
  • .regular
  • .semibold
  • .thin (看起來很酷,我猜蘋果也在某處使用它)
  • .ultralight

請注意,它僅適用於默認SystemFont 蘋果文檔

改變字體

UIFont(name: "HelveticaNeue-Thin", size: 16.0)
  • 其中 name 包括FontName
  • 您還可以通過在重量之前寫入-來指定.weight (如果該字體支持該重量,因為並非所有fontFamily支持所有類型的UIFont.Weight
  • 這是更優選的方法要使用,如果你不使用默認stylising字體SystemFont

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM