2

カスタムフォントを返すUIFontの拡張機能をSwiftで作成しています。

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 は実際には CGFloat ではなくパラメーターとして UIFont を要求しています。

ここに画像の説明を入力

4

1 に答える 1

2

museoSansRounded900クラスで直接呼び出そうとしているため、クラスメソッドである必要がありますUIFont(これにより、基本的にコンストラクターになります)。

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