{"id":374,"date":"2017-03-30T05:41:59","date_gmt":"2017-03-30T05:41:59","guid":{"rendered":"http:\/\/inwizards.com\/blog\/?p=374"},"modified":"2024-03-14T05:57:16","modified_gmt":"2024-03-14T05:57:16","slug":"how-to-validate-date-using-date-picker-in-swift-2-0","status":"publish","type":"post","link":"https:\/\/www.inwizards.com\/blog\/how-to-validate-date-using-date-picker-in-swift-2-0\/","title":{"rendered":"How To Validate Date Using Date-picker in Swift 2.0"},"content":{"rendered":"<p align=\"justify\"><span style=\"color: #000000;\">In iOS swift 2.0 generally programmers use text validate date using simple text field. But a programmer want to validate date using date picker, then this could be a little tough task. Using date picker you can only justify time and date but can\u2019t validate Date. Here expert developer at <strong>Inwizards, leading <a href=\"https:\/\/www.inwizards.com\/\">software development company<\/a> <\/strong>has shared a simple validation task with code, that would help you to validate date using Date picker in Swift 2.0.<\/span><\/p>\n<p align=\"justify\"><img loading=\"lazy\" class=\"aligncenter wp-image-376\" src=\"https:\/\/i1.wp.com\/inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/How-To-Validate-Date-Using-Date-picker-in-Swift-2.0-300x265.png?resize=401%2C354&#038;ssl=1\" alt=\"\" width=\"401\" height=\"354\" srcset=\"https:\/\/i0.wp.com\/www.inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/How-To-Validate-Date-Using-Date-picker-in-Swift-2.0.png?resize=300%2C265&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/How-To-Validate-Date-Using-Date-picker-in-Swift-2.0.png?resize=768%2C677&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/How-To-Validate-Date-Using-Date-picker-in-Swift-2.0.png?w=966&amp;ssl=1 966w\" sizes=\"(max-width: 401px) 100vw, 401px\" data-recalc-dims=\"1\" \/><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">import<\/span> UIKit<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">class<\/span> ViewController: <span style=\"color: #2b839f;\">UIViewController<\/span> {<\/span><\/span><\/span><\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><br \/>\n<ins class=\"adsbygoogle\" style=\"display: block; text-align: center;\" data-ad-layout=\"in-article\" data-ad-format=\"fluid\" data-ad-client=\"ca-pub-1542270097115731\" data-ad-slot=\"5976953901\"><\/ins><br \/>\n<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n<\/script><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">@IBOutlet<\/span> <span style=\"color: #0000ff;\">weak<\/span> <span style=\"color: #0000ff;\">var<\/span> DOBTextField:<span style=\"color: #2b839f;\">UITextField<\/span>!<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">@IBOutlet<\/span> <span style=\"color: #0000ff;\">weak<\/span> <span style=\"color: #0000ff;\">var<\/span> datePicker:<span style=\"color: #2b839f;\">UIDatePicker<\/span>!<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">@IBOutlet<\/span> <span style=\"color: #0000ff;\">weak<\/span> <span style=\"color: #0000ff;\">var<\/span> PickerBackgroundView:<span style=\"color: #2b839f;\">UIView<\/span>!<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">@IBOutlet<\/span> <span style=\"color: #0000ff;\">weak<\/span> <span style=\"color: #0000ff;\">var<\/span> Status: <span style=\"color: #2b839f;\">UILabel<\/span>!<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">var<\/span> formatter = NSDateFormatter()<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">override<\/span> <span style=\"color: #0000ff;\">func<\/span> viewDidLoad() {<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">super<\/span>.viewDidLoad()<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">formatter.dateFormat = <span style=\"color: #a31515;\">\u201cMMM dd,yyyy\u201d<\/span><\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">override<\/span> <span style=\"color: #0000ff;\">func<\/span> viewWillAppear(animated: <span style=\"color: #2b839f;\">Bool<\/span>) {<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">super<\/span>.viewWillAppear(<span style=\"color: #0000ff;\">true<\/span>)<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.initializeTextFieldInputView()<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">func<\/span> initializeTextFieldInputView(){<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.datePicker.backgroundColor = UIColor.whiteColor()<\/span><\/span><\/span><\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><br \/>\n<ins class=\"adsbygoogle\" style=\"display: block; text-align: center;\" data-ad-layout=\"in-article\" data-ad-format=\"fluid\" data-ad-client=\"ca-pub-1542270097115731\" data-ad-slot=\"5976953901\"><\/ins><br \/>\n<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n<\/script><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.datePicker.datePickerMode = UIDatePickerMode.Date<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.DOBTextField.inputView = <span style=\"color: #0000ff;\">self<\/span>.PickerBackgroundView<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.PickerBackgroundView.removeFromSuperview()<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">func<\/span> textFieldShouldBeginEditing(textField: <span style=\"color: #2b839f;\">UITextField<\/span>) -&gt; <span style=\"color: #2b839f;\">Bool<\/span> {<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">if<\/span> (textField == <span style=\"color: #0000ff;\">self<\/span>.DOBTextField){<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.datePicker.hidden = <span style=\"color: #0000ff;\">false<\/span><\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<span style=\"color: #0000ff;\">else<\/span>{<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.datePicker.hidden = <span style=\"color: #0000ff;\">true<\/span><\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">return<\/span> <span style=\"color: #0000ff;\">true<\/span><\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">@IBAction<\/span> <span style=\"color: #0000ff;\">func<\/span> buttonDone(sender:<span style=\"color: #2b839f;\">AnyObject<\/span>){<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.view.endEditing(<span style=\"color: #0000ff;\">true<\/span>)<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">let<\/span> Currentdate:<span style=\"color: #2b839f;\">NSDate<\/span> = NSDate()<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">let<\/span> ageComponents:<span style=\"color: #2b839f;\">NSDateComponents<\/span> = NSCalendar.currentCalendar().components(NSCalendarUnit.Year, fromDate:<span style=\"color: #0000ff;\">self<\/span>.datePicker.date, toDate: Currentdate, options: NSCalendarOptions.<span style=\"color: #0000ff;\">init<\/span>(rawValue: 0))<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">if<\/span> (ageComponents.year &lt; 18){<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.Status.text = <span style=\"color: #a31515;\">\u201cDate of birth is invalid\u201d<\/span><\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">let<\/span> alert = UIAlertView(title: <span style=\"color: #a31515;\">\u201cAlert\u201d<\/span>, message: <span style=\"color: #a31515;\">\u201cYou must be 18 years of age or older. Sorry, this is required by law.\u201d<\/span>, delegate: <span style=\"color: #0000ff;\">self<\/span>, cancelButtonTitle: <span style=\"color: #a31515;\">\u201cOK\u201d<\/span>)<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">alert.show()<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<span style=\"color: #0000ff;\">else<\/span>{<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.Status.text = <span style=\"color: #a31515;\">\u201cDate of birth is valid\u201d<\/span><\/span><\/span><\/span><\/p>\n<p><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script><br \/>\n<ins class=\"adsbygoogle\" style=\"display: block; text-align: center;\" data-ad-layout=\"in-article\" data-ad-format=\"fluid\" data-ad-client=\"ca-pub-1542270097115731\" data-ad-slot=\"5976953901\"><\/ins><br \/>\n<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n<\/script><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\"><span style=\"color: #0000ff;\">self<\/span>.DOBTextField.text = formatter.stringFromDate(<span style=\"color: #0000ff;\">self<\/span>.datePicker.date)<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Verdana, sans-serif;\"><span style=\"font-size: medium;\">}<\/span><\/span><\/span><\/p>\n<p class=\"western\"><span style=\"color: #777777;\"><span style=\"font-family: Lato, helvetica, arial, sans-serif;\"><span style=\"font-size: medium;\">Here I am sharing my code sample which on my <\/span><\/span><\/span><em><a href=\"https:\/\/github.com\/a7tech\/DOBValidatorSwift\" target=\"_blank\" rel=\"noopener\"><span style=\"color: #0000ff;\"><span style=\"font-family: Lato, helvetica, arial, sans-serif;\"><span style=\"font-size: medium;\"><i>GithHub repository<\/i><\/span><\/span><\/span><\/a><\/em><span style=\"color: #777777;\"><span style=\"font-family: Lato, helvetica, arial, sans-serif;\"><span style=\"font-size: medium;\">.<\/span><\/span><\/span><\/p>\n<p><strong>If you are looking for Software development Services? <a href=\"https:\/\/www.inwizards.com\/contactus.php\">Consult Inwizards<\/a><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In iOS swift 2.0 generally programmers use text validate date using simple text field. But a programmer want to validate date using date picker, then this could be a little tough task. Using date picker you can only justify time<\/p>\n","protected":false},"author":1,"featured_media":375,"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":[1],"tags":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.inwizards.com\/blog\/wp-content\/uploads\/2017\/03\/Validate-Date-Using-Date-picker.jpg?fit=1023%2C433&ssl=1","_links":{"self":[{"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts\/374"}],"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=374"}],"version-history":[{"count":6,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts\/374\/revisions"}],"predecessor-version":[{"id":2875,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/posts\/374\/revisions\/2875"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/media\/375"}],"wp:attachment":[{"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/media?parent=374"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/categories?post=374"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.inwizards.com\/blog\/wp-json\/wp\/v2\/tags?post=374"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}