从 Swift 中的函数中提取变量

Extracting a variable from a function in Swift

我确定对此有一个简单的答案,但我是一个新手,我不知道如何将一个简单的字符串捕获到一个变量中,以便在代码中的任何地方使用它。我只是想从 UIDatePicker 获取日期,而不仅仅是在标签中使用它。

    @IBAction func datePicker(_ sender: UIDatePicker)   {

        let dateFormater: DateFormatter = DateFormatter()
        dateFormater.dateFormat = "yyyy-MM-dd"
        let stringFromDate: String = dateFormater.string(from: self.datePicker.date) as String

              print(stringFromDate)
        // dateDisplay.text = stringFromDate
        return
   }

如有任何指示,我们将不胜感激。

如果您在与 datePicker 相同的 UIViewController 中有一个 var,则在调用 datePicker 时,该 var 将填充日期字符串。您可以在进入或离开这个或其他 UIViewControllers

时传递该值
var selectedDate: String?

@IBAction func datePicker(_ sender: UIDatePicker) {
    selectedDate = self.datePicker.date
}

如果您在另一个文件中创建一个静态函数作为另一个文件的一部分 class,您可以将日期字符串存储在那里。这不是很好的编码实践,除非您将所有逻辑放入协调器或类似类型的编码中。

class BigMessyDataHolder {
    static var selectedDate: Date?
}

然后在您的代码中,这样调用它:

   @IBAction func datePicker(_ sender: UIDatePicker) {
        BigMessyDataHolder.selectedDate = self.datePicker.date
   }

然后从任何地方访问 dateFormatter