How to get all the textfields from a view in swift

前端 未结 8 860
予麋鹿
予麋鹿 2020-12-17 17:53

I have a view which has more than 15 UITextFields. I have to set bottomBorder(extension) for all the UITextFields. I can set it one by one for all

8条回答
  •  天命终不由人
    2020-12-17 18:41

    extension:

    extension UIView {
        func viewOfType(type:T.Type, process: (_ view:T) -> Void)
        {        
            if let view = self as? T
            {
                process(view)
            }
            else {
                for subView in subviews
                {
                    subView.viewOfType(type:type, process:process)
                }
            }
        }
    }
    

    Usage:

    view.viewOfType(type:UITextField.self) {
            view in
    
            view.text = "123"
    }
    

提交回复
热议问题