2015-01-13 8 views
7

deklariert werden Ich erhalte den Compilerfehler "Klassenmethoden dürfen nur für einen Typ deklariert werden". Ich bin mir nicht sicher, warum ich das verstehe, um ehrlich zu sein. Alle Stapelüberlauf-Antworten gelten für einen anderen Senario. Irgendwelche Vorschläge werden geschätzt.Swift: Klassenmethoden dürfen nur für einen Typ

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

Versuchen Sie, das Schlüsselwort 'var' in Ihrem Methodenparameter zu entfernen. – AdamPro13

+0

Ist diese 'Klasse func fontWithSize' in einer' Klasse Foo {...} 'enthalten? –

Antwort

5

Eine Sache, die seltsam aussieht, ist das var Schlüsselwort vor dem Parameternamen ein. Die andere Sache; Deklarieren Sie diese Methode innerhalb einer class Definition? Wahrscheinlich erhalten Sie diesen Fehler, weil Sie die Methode auf oberster oder globaler Ebene deklarieren. Wenn das Ihre Absicht ist, brauchen Sie das Schlüsselwort class sowieso nicht.

+0

Das ist richtig, danke. Ich werde Ihre Antwort genehmigen, sobald das Zeitlimit abgelaufen ist. – user3606054

Verwandte Themen