2015-01-13 5 views
7

コンパイラエラー "クラスメソッドは型に対してのみ宣言できます"が表示されます。なぜ私はこれが正直になっているのか分かりません。すべてのスタックオーバーフローの回答は、別のシナリオに適用されます。どんな提案も感謝しています。奇妙に見えるSwift:クラスメソッドは型でのみ宣言できます

 class func fontWithSize(var size : CGFloat) -> UIFont 
     { 
     let font : UIFont = UIFont (name: "Roboto-Regular", size: size)! 
     return font; 
     } 
+0

メソッドパラメータの 'var'キーワードを削除してみてください。 – AdamPro13

+0

この 'class func fontWithSize'は' Foo {...} 'クラスに含まれていますか? –

答えて

5

ことの一つは、パラメータ名の前にvarキーワードです。 他のもの;このメソッドをclass定義の中に宣言していますか? トップレベルまたはグローバルスコープでメソッドを宣言しているため、おそらくこのエラーが発生しています。それがあなたの意図ならば、とにかくclassキーワードは必要ありません。

+0

これは正しいです、ありがとうございます。期限が過ぎると、私はあなたの答えを承認します。 – user3606054

関連する問題