1
私は4つのTextFieldを設定し、textFieldDidChange
で接続しました。今私は間違った検証を入れて、私は再びTextField
を選択し、すべての最後の入力をクリアできるようにしたいとしましょう。私はdidBeginEditing
をSwift 3で試しましたが、1つだけをクリアするので動作しませんTextField
TextField
の4つではありません。助けてください。Swift 3でTextFieldを編集または選択すると、すべてのTextFieldを消去する方法は?
import UIKit
class verificationVC: UIViewController,UITextFieldDelegate, UITextViewDelegate {
@IBOutlet weak var codefirstText: UITextField!
@IBOutlet weak var codesecondText: UITextField!
@IBOutlet weak var codethirdText: UITextField!
@IBOutlet weak var codefourthText: UITextField!
func textFieldDidBeginEditing(textField: UITextField)
{
codefirstText.text = ""
codesecondText.text = ""
codethirdText.text = ""
codefourthText.text = ""
if (codefirstText.text != nil)
{
codefirstText.text = ""
codesecondText.text = ""
codethirdText.text = ""
codefourthText.text = ""
}
else if (codesecondText.text != nil)
{
codefirstText.text = ""
codesecondText.text = ""
codethirdText.text = ""
codefourthText.text = ""
}
else if (codethirdText.text != nil)
{
codefirstText.text = ""
codesecondText.text = ""
codethirdText.text = ""
codefourthText.text = ""
}
else if (codefourthText.text != nil)
{
codefirstText.text = ""
codesecondText.text = ""
codethirdText.text = ""
codefourthText.text = ""
}
}
func textFieldDidChange (textfield: UITextField)
{
let text = textfield.text
if text?.utf16.count == 1
{
switch textfield {
case codefirstText:
codesecondText.becomeFirstResponder()
case codesecondText:
codethirdText.becomeFirstResponder()
case codethirdText:
codefourthText.becomeFirstResponder()
case codefourthText:
codefourthText.resignFirstResponder()
default:
break
}
}
は、あなたが '' self'にtextfield'デリゲートメソッドを設定しました:あなたの代わりに
nil
値の空の文字列をテキストフィールドの値をコントロールしようとしたんでした –