有没有办法让UITextFieldDelegate在swift中更具动态性?

时间:2014-12-09 07:54:54

标签: swift uitextfield uitextfielddelegate

我在UIViewController中几乎有一个UITextFieldDelegate,我做了

import UIKit

class testViewController: UIViewController,UITextFieldDelegate{

    @IBOutlet weak var textName: UITextField!

    override func viewDidLoad(){
       super.viewDidLoad()

       textName.delegate = self
    }

    func textFieldShouldReturn(textField: UITextField) -> Bool {
       return true
    }
}

效果很好。 但我的问题是,当我有两个或三个UITextFields,并且具有不同的功能时,我该怎么办?有没有办法让UITextFieldDelegate在swift中更具动态性?就像java一样吗?我记得java可能会这样:

textName.delegate = UITextFieldDelegate{
   func textFieldShouldReturn(textField: UITextField) -> Bool {
       return true
    }
}

textAddress.delegate = UITextFieldDelegate{
   func textFieldShouldReturn(textField: UITextField) -> Bool {
       return true
    }
}

1 个答案:

答案 0 :(得分:1)

委托方法采用一个参数来标识正在为其调用划分方法的文本字段。您可以使用它为不同的文本字段提供不同的行为。