2017-08-20 19 views
0

私はSwiftにとって非常に新しいです。私は、FUNCスイフト4機能ボタンのプロパティ

func roundedButton(buttonik: String) {  
    buttonik.clipsToBounds = true 
    buttonik.layer.cornerRadius = 10 
    buttonik.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMinXMinYCorner, .layerMaxXMaxYCorner] 
} 

を作成しようとしています

roundedButton(buttonik: "buttonTop") 

それを呼び出すと、この出力に

buttonTop.clipsToBounds = true 
buttonTop.layer.cornerRadius = 10 
buttonTop.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMinXMinYCorner, .layerMaxXMaxYCorner] 

を持っているよりも、私はこれらのエラーに

Value of type 'String' has no member 'clipsToBounds' 
Value of type 'String' has no member 'layer' 

を取得していますありがとう:)

答えて

0

ボタンの名前をそのボタンを表すオブジェクトと混同していることが問題だと思います。その後...あなたはこれらのプロパティを適用するボタンを渡す代わりに、それを文字列を渡すことによって、それを呼び出す

func roundedButton(button: UIButton) {  
    button.clipsToBounds = true 
    button.layer.cornerRadius = 10 
    button.layer.maskedCorners = [.layerMaxXMinYCorner, .layerMinXMinYCorner, .layerMaxXMaxYCorner] 
} 

:にあなたのルーチンを変更します。

0

buttonikパラメータがUIButtonになると思われますが、Stringと宣言しています。 Stringは変更しようとしているプロパティをサポートしていないため、コンパイルエラーが発生しています。代わりにUIButtonとして宣言すると、コードをコンパイルする必要があります。

+0

まあ、変数の名前の代わりに実際のボタンオブジェクトを 'String'として渡さなければなりません。 – Keiwan

関連する問題