目錄:[Swift]Xcode實際操做html
本文將演示日期拾取器的使用。swift
使用日期拾取器,能夠快速設置和選擇日期與時間。ide
在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】post
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 //首先初始化一個日期拾取器對象 9 let datePicker = UIDatePicker() 10 //日期拾取器對象的中心點位置 11 datePicker.center = CGPoint(x: 160, y: 200) 12 //接着設置日期拾取器的標識值,以便未來再次使用它。 13 datePicker.tag = 1 14 //設置日期拾取器的最小值,其最小值爲當前的日期。 15 datePicker.minimumDate = Date() 16 //設置日期日期拾取器的最大值,其最大值爲距離當前三天以後的日期 17 datePicker.maximumDate = Date(timeInterval: 3*24*60*60, since: Date()) 18 //將日期拾取器對象,添加到當前窗口的根視圖 19 self.view.addSubview(datePicker) 20 21 //建立一個位置在(20,360),尺寸爲(280,44)的顯示區域 22 let rect = CGRect(x: 20, y: 360, width: 280, height: 44) 23 //初始化一個樣式爲圓角矩形的按鈕對象 24 let button = UIButton(type: UIButton.ButtonType.roundedRect) 25 //設置按鈕的位置和尺寸屬性 26 button.frame = rect 27 //設置按鈕的背景顏色爲淺灰色 28 button.backgroundColor = UIColor.lightGray 29 //設置按鈕的標題文字 30 button.setTitle("Get date", for: .normal) 31 //接着給按鈕綁定點擊事件 32 button.addTarget(self, action: #selector(ViewController.getDate(_:)), for: UIControl.Event.touchUpInside) 33 //而後將按鈕添加到當前根視圖 34 self.view.addSubview(button) 35 } 36 37 //添加一個方法,用來執行按鈕的點擊事件 38 @objc func getDate(_ button:UIButton) 39 { 40 //經過標識值,獲取當前日期拾取器對象 41 let datePicker = self.view.viewWithTag(1) as! UIDatePicker 42 //得到日期拾取器的日期值 43 let date = datePicker.date 44 //新建一個日期格式化對象,用來實現日期的格式化 45 let dateFormater = DateFormatter() 46 //設置日期的格式,大寫的字母H,表示採用24小時制 47 dateFormater.dateFormat = "yyyy-MM-dd HH:mm" 48 //將日期轉換爲指定格式的字符串 49 let dateAndTime = dateFormater.string(from: date) 50 51 //建立一個警告彈出窗口,顯示日期結果。 52 let alert = UIAlertController(title: "Information", message: dateAndTime, preferredStyle: UIAlertController.Style.alert) 53 //建立一個按鈕,做爲提示窗口中的【肯定】按鈕, 54 //當用戶點擊該按鈕時,將關閉提示窗口 55 let OKAction = UIAlertAction(title: "OK", style: UIAlertAction.Style.default, handler: nil) 56 //將【肯定】按鈕添加到提示窗口中 57 alert.addAction(OKAction) 58 //在當前視圖控制器中,展現提示 窗口 59 self.present(alert, animated: true, completion: nil) 60 } 61 62 override func didReceiveMemoryWarning() { 63 super.didReceiveMemoryWarning() 64 // Dispose of any resources that can be recreated. 65 } 66 }