{"id":378,"date":"2017-03-31T05:54:41","date_gmt":"2017-03-31T05:54:41","guid":{"rendered":"http:\/\/inwizards.com\/blog\/?p=378"},"modified":"2023-11-06T06:34:58","modified_gmt":"2023-11-06T06:34:58","slug":"how-to-validate-textfield-using-swift-2-0-in-ios","status":"publish","type":"post","link":"https:\/\/www.inwizards.com\/blog\/how-to-validate-textfield-using-swift-2-0-in-ios\/","title":{"rendered":"How To Validate TextField Using Swift 2.0 In iOS"},"content":{"rendered":"<p>So you want to know How To Validate TextField Using Swift 2.0 In iOS? Don&#8217;t worry Inwizards, a leading <strong><a href=\"https:\/\/www.inwizards.com\/\">Software Development Company<\/a><\/strong> has expert developers that has solution to your query.<\/p>\n<p>Objective:- Make a registration form with apply all required validation.<\/p>\n<p><strong>Create a new project<\/strong><\/p>\n<p align=\"justify\">Open Xcode , create a new \u201cSingle Page Application\u201d and select Swift as the programming language.<\/p>\n<p><strong>Add a TextField property<\/strong><\/p>\n<p align=\"justify\">Open the ViewController.swift class and add a new tableview instance variable below the class declaration.<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var firstName: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var LastName: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var UserName: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var DateofBirth: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var MobileNo: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var password: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var Cpassword: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var DOB: UIDatePicker!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var emailID: UITextField!<\/p>\n<p><strong>Add Source File from project directory.<\/strong><br \/>\n<script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><\/p>\n<p><script>\n     (adsbygoogle = window.adsbygoogle || []).push({<yoastmark class=\"yoast-text-mark\">}<\/yoastmark>);\n<\/script><\/p>\n<p align=\"JUSTIFY\">TextFieldValidation.swift<\/p>\n<p align=\"JUSTIFY\">ValidationError.swift<\/p>\n<p align=\"JUSTIFY\">ValidationErrorType.swift<\/p>\n<p align=\"JUSTIFY\">ValidationFactory.swift<\/p>\n<p align=\"JUSTIFY\">ValidationRule.swift<\/p>\n<p align=\"JUSTIFY\">ValidationRuleType.swift<\/p>\n<p align=\"JUSTIFY\">Validator.swift<\/p>\n<p align=\"JUSTIFY\">Validation.swift<\/p>\n<p><strong>Confirm to the TextField Delegate.<\/strong><\/p>\n<p>To conform to the UITextFieldDelegate,ValidationFieldDelegate just add them separated by colons after UIViewController in the class declaration. This was a bit confusing at first but the new protocol syntax is cleaner.<\/p>\n<p>class ViewController: UIViewController,UITextFieldDelegate,ValidationFieldDelegate<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">\u2026\u2026.<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\"><img loading=\"lazy\" src=\"https:\/\/i0.wp.com\/inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/How-To-Validate-TextField-Using-Swift-2.0-In-iOS-300x265.png?resize=442%2C390&#038;ssl=1\" alt=\"\" width=\"442\" height=\"390\" data-recalc-dims=\"1\" \/><br \/>\n<strong>Add a TextField in your view controller<\/strong><\/p>\n<p align=\"justify\">Search in the component library(It should be in the lower right corner) for TextField and then drag and drop it on the view.<\/p>\n<p><strong>Connect the Interface Builder Outlets<\/strong><\/p>\n<p align=\"justify\">Connect the referencing delegate outlets.<br \/>\nWe can connect the respective outlets using interface builder by right clicking on the textfield view and dragging each outlet on the view controller.<\/p>\n<p align=\"JUSTIFY\"><strong>Now Goto ViewController.swift file<\/strong><\/p>\n<p align=\"JUSTIFY\">import UIKit<\/p>\n<p align=\"JUSTIFY\">struct MoveKeyboard {<\/p>\n<p align=\"JUSTIFY\">static let KEYBOARD_ANIMATION_DURATION : CGFloat = 0.3<\/p>\n<p align=\"JUSTIFY\">static let MINIMUM_SCROLL_FRACTION : CGFloat = 0.2;<\/p>\n<p align=\"JUSTIFY\">static let MAXIMUM_SCROLL_FRACTION : CGFloat = 0.8;<\/p>\n<p align=\"JUSTIFY\">static let PORTRAIT_KEYBOARD_HEIGHT : CGFloat = 216;<\/p>\n<p align=\"JUSTIFY\">static let LANDSCAPE_KEYBOARD_HEIGHT : CGFloat = 162;<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p>class ViewController:UIViewController,UITextFieldDelegate,ValidationFieldDelegate,UIAlertViewDelegate<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">\/\/************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">\/\/ MARK: Create Outlets and Proprty.<\/p>\n<p align=\"JUSTIFY\">\/\/************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var firstName: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var LastName: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var UserName: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var DateofBirth: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var MobileNo: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var password: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var Cpassword: UITextField!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var DOB: UIDatePicker!<\/p>\n<p align=\"JUSTIFY\">@IBOutlet weak var emailID: UITextField!<\/p>\n<p align=\"JUSTIFY\">var animateDistance:CGFloat!<\/p>\n<p align=\"JUSTIFY\">var validator = Validator()<\/p>\n<p align=\"JUSTIFY\">var databasePath = NSString()<\/p>\n<p align=\"JUSTIFY\">var Fields = [\u201cEmail\u201d,\u201cPhone\u201d,\u201cPassword\u201d,\u201cCpassword\u201d,\u201cUserID\u201d,\u201cfname\u201d,\u201cLname\u201d,\u201cdob\u201d]<\/p>\n<p align=\"JUSTIFY\">\/\/*************************************************************************************************<\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><\/p>\n<p><script>\n     (adsbygoogle = window.adsbygoogle || []).push({<yoastmark class=\"yoast-text-mark\">}<\/yoastmark>);\n<\/script><\/p>\n<p align=\"JUSTIFY\">\/\/ MARK: viewDidLoad<\/p>\n<p align=\"JUSTIFY\">\/\/*************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">override func viewDidLoad() {<\/p>\n<p align=\"JUSTIFY\">super.viewDidLoad()<\/p>\n<p align=\"JUSTIFY\">self.setUpUI()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func setUpUI(){<\/p>\n<p align=\"JUSTIFY\">emailID.delegate = self<\/p>\n<p align=\"JUSTIFY\">MobileNo.delegate = self<\/p>\n<p align=\"JUSTIFY\">password.delegate = self<\/p>\n<p align=\"JUSTIFY\">Cpassword.delegate = self<\/p>\n<p align=\"JUSTIFY\">UserName.delegate = self<\/p>\n<p align=\"JUSTIFY\">firstName.delegate = self<\/p>\n<p align=\"JUSTIFY\">LastName.delegate = self<\/p>\n<p align=\"JUSTIFY\">DateofBirth.delegate = self<\/p>\n<p align=\"JUSTIFY\">\/\/ MARK: Apply Validation on textfield.<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[0],textField: emailID,rules: [.Required, .Email])<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[1],textField: MobileNo,rules: [.Required, .PhoneNumber])<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[2],textField: password,rules: [.Required, .Password])<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[3],textField: Cpassword,rules: [.Required, .Password])<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[4],textField: UserName,rules: [.Required, .MinLength])<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[5],textField: firstName,rules: [.Required, .MaxLength])<\/p>\n<p align=\"JUSTIFY\">validator.registerFieldByKey(Fields[6],textField: LastName,rules: [.Required, .MaxLength])<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">\/\/*************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">\/\/ MARK: Use datePicker for valueChanged on textField.<\/p>\n<p align=\"JUSTIFY\">\/\/*************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">@IBAction func dobtext(sender: UITextField)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">let datePickerView : UIDatePicker = UIDatePicker()<\/p>\n<p align=\"JUSTIFY\">datePickerView.datePickerMode = UIDatePickerMode.Date<\/p>\n<p align=\"JUSTIFY\">sender.inputView = datePickerView<\/p>\n<p align=\"JUSTIFY\">datePickerView.addTarget(self, action: Selector(\u201chandleDatePicker:\u201d), forControlEvents:UIControlEvents.ValueChanged)<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func handleDatePicker(sender: UIDatePicker)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">let dateFormatter = NSDateFormatter()<\/p>\n<p align=\"JUSTIFY\">dateFormatter.dateFormat = \u201cdd MMM yyyy\u201d<\/p>\n<p align=\"JUSTIFY\">DateofBirth.text = dateFormatter.stringFromDate(sender.date)<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">\/\/**************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">\/\/ MARK: TextField Delegate Method For Moving Keyboard.<\/p>\n<p align=\"JUSTIFY\">\/\/**************************************************************************************************<\/p>\n<p align=\"JUSTIFY\">func textFieldDidBeginEditing(textField: UITextField) {<\/p>\n<p align=\"JUSTIFY\">let textFieldRect : CGRect = self.view.window!.convertRect(textField.bounds, fromView: textField)<\/p>\n<p align=\"JUSTIFY\">let viewRect : CGRect = self.view.window!.convertRect(self.view.bounds, fromView: self.view)<\/p>\n<p align=\"JUSTIFY\">let midline : CGFloat = textFieldRect.origin.y + 0.5 * textFieldRect.size.height<\/p>\n<p align=\"JUSTIFY\">let numerator : CGFloat = midline \u2013 viewRect.origin.y \u2013 MoveKeyboard.MINIMUM_SCROLL_FRACTION * viewRect.size.height<\/p>\n<p align=\"JUSTIFY\">let denominator : CGFloat = (MoveKeyboard.MAXIMUM_SCROLL_FRACTION \u2013MoveKeyboard.MINIMUM_SCROLL_FRACTION) * viewRect.size.height<\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><\/p>\n<p><script>\n     (adsbygoogle = window.adsbygoogle || []).push({<yoastmark class=\"yoast-text-mark\">}<\/yoastmark>);\n<\/script><\/p>\n<p align=\"JUSTIFY\">var heightFraction : CGFloat = numerator \/ denominator<\/p>\n<p align=\"JUSTIFY\">if heightFraction &lt; 0.0 {<\/p>\n<p align=\"JUSTIFY\">heightFraction = 0.0<\/p>\n<p align=\"JUSTIFY\">} else if heightFraction &gt; 1.0 {<\/p>\n<p align=\"JUSTIFY\">heightFraction = 1.0<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">let orientation : UIInterfaceOrientation = UIApplication.sharedApplication().statusBarOrientation<\/p>\n<p align=\"JUSTIFY\">if (orientation == UIInterfaceOrientation.Portrait || orientation == UIInterfaceOrientation.PortraitUpsideDown) {<\/p>\n<p align=\"JUSTIFY\">animateDistance = floor(MoveKeyboard.PORTRAIT_KEYBOARD_HEIGHT * heightFraction)<\/p>\n<p align=\"JUSTIFY\">} else {<\/p>\n<p align=\"JUSTIFY\">animateDistance = floor(MoveKeyboard.LANDSCAPE_KEYBOARD_HEIGHT * heightFraction)<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">var viewFrame : CGRect = self.view.frame<\/p>\n<p align=\"JUSTIFY\">viewFrame.origin.y -= animateDistance<\/p>\n<p align=\"JUSTIFY\">UIView.beginAnimations(nil, context: nil)<\/p>\n<p align=\"JUSTIFY\">UIView.setAnimationBeginsFromCurrentState(true)<\/p>\n<p align=\"JUSTIFY\">UIView.setAnimationDuration(NSTimeInterval(MoveKeyboard.KEYBOARD_ANIMATION_DURATION))<\/p>\n<p align=\"JUSTIFY\">self.view.frame = viewFrame<\/p>\n<p align=\"JUSTIFY\">UIView.commitAnimations()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func textFieldDidEndEditing(textField: UITextField) {<\/p>\n<p align=\"JUSTIFY\">var viewFrame : CGRect = self.view.frame<\/p>\n<p align=\"JUSTIFY\">viewFrame.origin.y += animateDistance<\/p>\n<p align=\"JUSTIFY\">UIView.beginAnimations(nil, context: nil)<\/p>\n<p align=\"JUSTIFY\">UIView.setAnimationBeginsFromCurrentState(true)<\/p>\n<p align=\"JUSTIFY\">UIView.setAnimationDuration(NSTimeInterval(MoveKeyboard.KEYBOARD_ANIMATION_DURATION))<\/p>\n<p align=\"JUSTIFY\">self.view.frame = viewFrame<\/p>\n<p align=\"JUSTIFY\">UIView.commitAnimations()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func textFieldShouldReturn(textField: UITextField) -&gt; Bool {<\/p>\n<p align=\"JUSTIFY\">textField.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">return true<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func DismissKeyboard(){<\/p>\n<p align=\"JUSTIFY\">emailID.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">MobileNo.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">UserName.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">UserName.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">LastName.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">password.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">Cpassword.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -&gt; Bool {<\/p>\n<p align=\"JUSTIFY\">if(string == \u201c\\n\u201d){<\/p>\n<p align=\"JUSTIFY\">emailID.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">MobileNo.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">UserName.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">UserName.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">LastName.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">password.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">Cpassword.resignFirstResponder()<\/p>\n<p align=\"JUSTIFY\">return false<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">return true<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">override func prefersStatusBarHidden() -&gt; Bool {<\/p>\n<p align=\"JUSTIFY\">return true<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">\/\/*******************************************************************************************************************************************\/\/<\/p>\n<p align=\"JUSTIFY\">\/\/ MARK: Validation Delegate Function.<\/p>\n<p align=\"JUSTIFY\">\/\/*******************************************************************************************************************************************\/\/<\/p>\n<p align=\"JUSTIFY\">func validationFieldFailed(key:String, error:ValidationError)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">\/\/set error textfield border to red.<\/p>\n<p align=\"JUSTIFY\">_ = UITextField(frame: CGRectMake(0.0, 0.0, 200.0, 44.0))<\/p>\n<p align=\"JUSTIFY\">error.textField.layer.cornerRadius = 8.0<\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><\/p>\n<p><script>\n     (adsbygoogle = window.adsbygoogle || []).push({<yoastmark class=\"yoast-text-mark\">}<\/yoastmark>);\n<\/script><\/p>\n<p align=\"JUSTIFY\">error.textField.layer.masksToBounds = true<\/p>\n<p align=\"JUSTIFY\">error.textField.layer.borderColor = UIColor.redColor().CGColor<\/p>\n<p align=\"JUSTIFY\">error.textField.layer.borderWidth = 2.0<\/p>\n<p align=\"JUSTIFY\">error.textField<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">func validationFieldSuccess(key:String, validField:UITextField)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">\/\/set valid textfield border to green<\/p>\n<p align=\"JUSTIFY\">_ = UITextField(frame: CGRectMake(0.0, 0.0, 200.0, 44.0))<\/p>\n<p align=\"JUSTIFY\">validField.layer.cornerRadius = 8.0<\/p>\n<p align=\"JUSTIFY\">validField.layer.masksToBounds = true<\/p>\n<p align=\"JUSTIFY\">validField.layer.borderColor = UIColor.greenColor().CGColor<\/p>\n<p align=\"JUSTIFY\">validField.layer.borderWidth = 2.0<\/p>\n<p align=\"JUSTIFY\">validField<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">@IBAction func validateField(sender: AnyObject)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">switch (sender as! UITextField)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">case emailID :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[0]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">case MobileNo :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[1]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">case password :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[2]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">case Cpassword :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[3]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">case UserName :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[4]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">case firstName :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[5]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">case LastName :<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey((Fields[6]), delegate: self)<\/p>\n<p align=\"JUSTIFY\">break<\/p>\n<p align=\"JUSTIFY\">default :<\/p>\n<p align=\"JUSTIFY\">print(\u201cno fields to validate\u201d)<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">@IBAction func SubmitAction(sender: AnyObject)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">if (firstName == nil || firstName.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><\/p>\n<p><script>\n     (adsbygoogle = window.adsbygoogle || []).push({<yoastmark class=\"yoast-text-mark\">}<\/yoastmark>);\n<\/script><\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey(Fields[5], delegate: self)<\/p>\n<p align=\"JUSTIFY\">let alert = UIAlertView(title: \u201cError\u201d, message: \u201cPlease Enter Your First Name\u201d, delegate: self, cancelButtonTitle: \u201cOK\u201d)<\/p>\n<p align=\"JUSTIFY\">alert.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if (LastName == nil || LastName.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{ validator.validateFieldByKey(Fields[6], delegate: self)<\/p>\n<p align=\"JUSTIFY\">let alertview = UIAlertView(title: \u201cError\u201d, message: \u201cPlease Enter Your Last Name\u201d, delegate: self, cancelButtonTitle: \u201cok\u201d)<\/p>\n<p align=\"JUSTIFY\">alertview.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if (UserName == nil || UserName.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey(Fields[4], delegate: self)<\/p>\n<p align=\"JUSTIFY\">let alertview = UIAlertView(title: \u201cError\u201d, message: \u201cUserID Short Should be 5 Char. \u201c, delegate: self, cancelButtonTitle: \u201cok\u201d)<\/p>\n<p align=\"JUSTIFY\">alertview.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if (MobileNo == nil || MobileNo.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey(Fields[1], delegate:self)<\/p>\n<p align=\"JUSTIFY\">let alertview = UIAlertView(title: \u201cError\u201d, message: \u201cPlease Enter Mobile No. and must be 10 digit \u201c, delegate:self, cancelButtonTitle: \u201cok\u201d)<\/p>\n<p align=\"JUSTIFY\">alertview.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if (emailID == nil || emailID.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">validator.validateFieldByKey(Fields[0], delegate:self)<\/p>\n<p align=\"JUSTIFY\">let alertview = UIAlertView(title: \u201cError\u201d, message: \u201cPlease Enter Your Email Address\u201d, delegate: self, cancelButtonTitle: \u201cok\u201d)<\/p>\n<p align=\"JUSTIFY\">alertview.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if (password == nil || password.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{ validator.validateFieldByKey(Fields[2], delegate: self)<\/p>\n<p align=\"JUSTIFY\">let alertview = UIAlertView(title: \u201cError\u201d, message: \u201cPlease Enter Your Password \u201c, delegate: self, cancelButtonTitle: \u201cok\u201d)<\/p>\n<p align=\"JUSTIFY\">alertview.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if (Cpassword == nil || Cpassword.text == \u201c\u201d)<\/p>\n<p align=\"JUSTIFY\">{ validator.validateFieldByKey(Fields[3], delegate: self)<\/p>\n<p align=\"JUSTIFY\">let alertview = UIAlertView(title: \u201cError\u201d, message: \u201cPlease Enter Confirm Password \u201c, delegate: self, cancelButtonTitle: \u201cok\u201d)<\/p>\n<p align=\"JUSTIFY\">alertview.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">else if(password.text != Cpassword.text)<\/p>\n<p align=\"JUSTIFY\">{<\/p>\n<p align=\"JUSTIFY\">let alert = UIAlertView(title: \u201cAlert\u201d, message: \u201cPassword And Confirm Password Should Be Same\u201d, delegate:self, cancelButtonTitle: \u201cCancel\u201d,otherButtonTitles: \u201cOk\u201d)<\/p>\n<p align=\"JUSTIFY\">alert.show()<\/p>\n<p align=\"JUSTIFY\">password.text = \u201c\u201d<\/p>\n<p align=\"JUSTIFY\">Cpassword.text = \u201c\u201d<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><\/p>\n<p><script>\n     (adsbygoogle = window.adsbygoogle || []).push({<yoastmark class=\"yoast-text-mark\">}<\/yoastmark>);\n<\/script><\/p>\n<p align=\"JUSTIFY\">else{<\/p>\n<p align=\"JUSTIFY\">let alert = UIAlertView(title: \u201cSuccess\u201d, message: \u201cAll Validation is correct\u201d, delegate: self, cancelButtonTitle:nil,otherButtonTitles: \u201cOk\u201d)<\/p>\n<p align=\"JUSTIFY\">alert.show()<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">}<\/p>\n<p align=\"JUSTIFY\">You can <a href=\"https:\/\/github.com\/a7tech\/InTextFieldValidationSwift\">download Demo project<\/a> from here.<\/p>\n<article id=\"post-382\" class=\"blog-post post-382 post type-post status-publish format-standard has-post-thumbnail hentry category-inwizards-web-and-app-development-company\">\n<div class=\"entry-content\">\n<p><strong>Also Check out <a href=\"https:\/\/www.inwizards.com\/blog\/how-to-search-photos-using-flickr-api-in-swift-2-0\/\">How to Search Photos Using Flickr API In Swift 2.0?<\/a><\/strong><\/p>\n<\/div>\n<\/article>\n","protected":false},"excerpt":{"rendered":"<p>So you want to know How To Validate TextField Using Swift 2.0 In iOS? Don&#8217;t worry Inwizards, a leading Software Development Company has expert developers that has solution to your query. Objective:- Make a registration form with apply all required<\/p>\n","protected":false},"author":1,"featured_media":380,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"spay_email":""},"categories":[300],"tags":[],"jetpack_featured_media_url":"https:\/\/i2.wp.com\/www.inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/Validate-TextField-Using-Swift-2.0.jpg?fit=1023%2C433&ssl=1","_links":{"self":[{"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts\/378"}],"collection":[{"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/comments?post=378"}],"version-history":[{"count":10,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts\/378\/revisions"}],"predecessor-version":[{"id":2586,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts\/378\/revisions\/2586"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/media\/380"}],"wp:attachment":[{"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/media?parent=378"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/categories?post=378"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/tags?post=378"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}