swift

1、初始化button,datepicker,label等控件,初始化时间格式化器

    var datePicker = UIDatePicker()
    var btnShows = UIButton()
   self.creatDatePicker()
    
   btnShows.frame = CGRect(x:10,y:300,self.view.bounds.size.width-20,height:50)
   btnShows.setTitle("按钮", for: .normal)
   btnShows.backgroundColor = UIColor.blue
   btnShows.addTarget(self, action: #selector(btnClick), for: .touchUpInside)
   self.view.addSubview(btnShows)

按钮点击方法的实现:

        let date = datePicker.date
        
        //创建一个日期格式器
        let dformatter = DateFormatter()
        
        //为日期格式器设置格式字符串
        dformatter.dateFormat = "yyyy年MM月dd日 HH:MM:ss"
        
        //为日期格式器格式化日期、时间
        let dateStr = dformatter.string(from: date)
        
        let msg = "您选择的日期和时间是:(dateStr)"
        
        //创建一个UIAlertControllerdmxt (消息框),并通过该消息框显示用户选择的日期、时间
        let alertController = UIAlertController(title:"当前的日期是",message:msg,preferredStyle:.alert)
        let cancel = UIAlertAction(title:"取消",style:.cancel,handler:nil)
        let okAction = UIAlertAction(title:"确定",style:.default,handler:
        {
            action in
            print("这里是确定的方法")
        })
        
        alertController.addAction(cancel)
        alertController.addAction(okAction)
        self.present(alertController,animated:true,completion:nil)

2、creatDatePicker方法的实现

func creatDatePicker() {
        
        datePicker.frame = CGRect(x:0,y:65,self.view.bounds.width-20,height:260)
        
        datePicker.backgroundColor = UIColor.yellow
        
        //将日期选择器区域设置为中文,则选择器日期显示为中文
        datePicker.locale = Locale(identifier:"zh_CN")
        
        //响应事件
        datePicker.addTarget(self, action: #selector(dateChanged), for: .valueChanged)
        
        //改变控件时间选择模式
        datePicker.datePickerMode = .dateAndTime
        
        //修改文字颜色
        datePicker.setValue(UIColor.brown, forKey: "textColor")
            
        self.view.addSubview(datePicker)
    }

datepicker的响应方法的实现:

func dateChanged() {
        
        //更新提示框
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "yyyy:MM:dd HH:mm:ss"
        print(dateFormatter.string(from: datePicker.date))
        
    }

3、日期选择控件文字改成中文

默认是中文,如果显示中文

//将日期选择器区域设置为中文,则选择器日期显示为中文
datePicker.locale = NSLocale(localeIdentifier: "zh_CN")

代码的效果是:点击按钮展示选中的时间,并显示到label上,效果图如下:

原文地址:https://www.cnblogs.com/hero11223/p/5711858.html