日期选择器未在swift中显示正确的日期

时间:2017-08-04 07:11:37

标签: ios swift swift3 datepicker

日期选择器未显示当前日期

这是日期选择器代码

@IBAction func Fromdate(_ sender: UIButton) {

        DatePicker.isHidden = false
        DatePicker.addTarget(self, action: #selector(SendLeaveLetterViewController.datepickcervalueschange1), for: .valueChanged)
    }


func datepickcervalueschange1(datepicker:UIDatePicker)
{


    DatePicker.datePickerMode = .date

    let dateformat1 = DateFormatter()

    dateformat1.dateFormat = "DD-MM-YYYY"

    print("datepiker date ",DatePicker.date)


    dateformat1.timeZone = NSTimeZone(abbreviation: "GMT+0:00")! as TimeZone

    ===> problem hear  
    let selectdata1 = dateformat1.string(from:DatePicker.date)

    print("selectdate...\(selectdata1)")

    frombutton.setTitle(selectdata1, for: .normal)

}

我得到了输出:

如果我可以点击12/08/2017更新后显示

datepiker日期2017-08-12 07:00:21 +0000

... selectdate 224-08-2017

请帮助我......

2 个答案:

答案 0 :(得分:1)

dateFormat是错误的。 你应该替换它:

dateformat1.dateFormat = "DD-MM-YYYY"

由此:

dateformat1.dateFormat = "dd-MM-yyyy"

答案 1 :(得分:1)

DateFormatter使用Unicode Technical Standart其中

  

d - 每月的某一天

     

D - 一年中的某一天

所以你应该使用

dateformat1.dateFormat = "dd-MM-yyyy"