将系统日期放入swift的文本字段中

时间:2017-05-03 04:16:08

标签: ios swift3 nsdate nsdateformatter

我是swift的新手,并会欣赏弦乐器操作方面的一些帮助。我试图将当前日期从NSDate中删除,并将其放入我正在处理的应用程序的文本字段中。我试图使用NSDateFormatter将ios系统日期放入国际表单或dd-MM-yyyy,但我只是继续得到所有这些错误而且没有任何作用。我可以使用美国日期格式,我真的需要它才能工作。我真的不知道那么快,但我知道我试图遵循堆栈溢出的其他教程指示我使用NSDate在视图控制器中放置一些代码。我参与了其他一些教程,并尝试让他们做我需要的,这就是结果。它曾用于创建日期和时间戳,但我试图削减处理时间的部分。我想我做得更糟。

func convertDateFormatter(date: String) -> String {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"

 guard let date = dateFormatter.date(from: date) else {
     assert(false, "no date from string")
     return ""
 }

 dateFormatter.dateFormat = "dd-MM-yyyy"
 let timeStamp = dateFormatter.string(from: date)
 return timeStamp

 }

我的swift版本没有认识到NSDate,它想把它改成日期,我不知道它如何影响我应该如何做到这一点。我在代码中将其更改为日期,但它仍然无法正常工作。

此外,昨天我的移动应用老师和我试图将自定义变量和文本字段等同起来,但它不起作用。

 var UIDateStamp = UITextField().self

我可能会错误地搜索我的搜索但是我已经用不同的方式搜索了同样的查询,但是到目前为止我尝试过的每个解决方案都给了我很多错误,我的编码类和我无法解决。

我非常感谢这个问题的帮助。

2 个答案:

答案 0 :(得分:0)

如果你需要系统日期,你需要创建没有参数的函数。

Swift 3

 func convertDateFormatter() -> String {
      let date = Date()
      let formatter = DateFormatter()
      formatter.dateFormat = "dd-MM-yyyy" // change format as per needs
      let result = formatter.string(from: date)
      return result 
    }

答案 1 :(得分:0)

如果您想要一种取决于当前区域设置的日期格式,请使用timeStyledateStyle属性。

此代码 - 作为计算属性 - 返回美国语言环境的M/d/yy

var timeStamp : String {
    let formatter = DateFormatter()
    formatter.timeStyle = .none
    formatter.dateStyle = .short
    return formatter.string(from: Date())
}

日期样式medium返回MMM d, yyyy