2

我正在 Swift 中创建 UIFont 的扩展,它将返回自定义字体。

import UIKit

extension UIFont {
  func museoSansRounded900(size: CGFloat) -> UIFont {
    return UIFont(name: "MuseoSansRounded900", size: size)!
  }
}

但是,当我使用扩展时,self.titleLabel?.font = UIFont.museoSansRounded900(15.0)Xcode 在设计时返回错误说'(CGFloat) -> UIFont' is not convertible to 'UIFont'

难道我做错了什么?当我使用扩展中的函数时,Xcode 实际上要求 UIFont 作为参数而不是 CGFloat。

在此处输入图像描述

4

1 回答 1

2

museoSansRounded900应该是一个类方法,因为你试图直接在UIFont类上调用它(这使得它基本上是一个构造函数)。

class func museoSansRounded900(size: CGFloat) -> UIFont ...
于 2015-06-23T08:59:21.517 回答