2016-04-01 12 views
0

スウィフトとモバイル開発には新しく、TextFieldスタイルを変更して、それぞれのTextFieldに長いコードを書く必要はありません。スウィフトでTextFieldボーダーをスタイルする機能がありません

これは私が何をしようとしていますものです:

func borderstyle(TextField : UITextField){ 

    self.TextField.layer.borderColor = UIColor(red: 46/225, green: 204/225, blue: 113/225, alpha: 1).CGColor; 
    self.TextField.layer.borderWidth = CGFloat(Float(1.0)); 
    self.TextField.layer.cornerRadius = CGFloat(Float(0.0)); 

} 

私はあなたが私はコードを形成するためにしようとしています何を得ることができ、問題はその一方、FUNCでのTextFieldを@IBOutletとして読まれていることだと思いますない。私はこのようなもので、私が持っている任意のTextFieldをスタイルにしたい

borderstyle(UserNameTextField) // UserNameTextField is @IBOutlet 

私はそこに間違いのいくつかの種類をやっていることを知っているが、私はいただきました!それを解決するための最良の方法を知ってほしいです。

ありがとうございました。

答えて

2

なぜ関数にtextFieldを渡してから、その中にself.textFieldを使用しますか?

用途:

TextField.layer.borderColor = UIColor(red: 46/225, green: 204/225, blue: 113/225, alpha: 1).CGColor; 
TextField.layer.borderWidth = CGFloat(Float(1.0)); 
TextField.layer.cornerRadius = CGFloat(Float(0.0)); 
+0

示すように、良い命名概念としてはい、私はより多くのスタイルを追加する場合は、この作業が、使用しているのBorderStyle(「UserNameTextField」)はずっとeaser spicilyだろう知っているキャメルケースに従ってください –

+0

いいえ、私は、自分を取り除かなければならないということです。これは、クラスのプロパティを参照して、あなたが関数に渡しているものではありません... –

+0

'self.TextField'を使って、その名前のストアドプロパティを指しています。あなたが示したように、自分自身を取り除き、 'UITextField'をメソッドに渡すと、渡されたtextFieldの目的のプロパティが設定されます – Mathews

1

コードから自己のポインタを削除します。

func borderstyle(textField : UITextField){ 

textField.layer.borderColor = UIColor(red: 46/225, green: 204/225, blue: 113/225, alpha: 1).CGColor; 
textField.layer.borderWidth = CGFloat(Float(1.0)); 
textField.layer.cornerRadius = CGFloat(Float(0.0)); 

}

NB:

+0

yep :)。 。thanks :)私は前にそれらを削除しようとしたが、それは私がUITextFieldのString instateを持っていたcozを動作しませんでした..ありがとう –

関連する問題