Получаемое вами сообщение об ошибке (которое вы не перечислите, но которое может быть выведено из строки, в которой вы получили ошибку) вызвано проблемой области действия.
Переменные не могут быть доступны вне области действияони создаются в. В Swift вы почти всегда можете перевести область видимости как соответствующие фигурные скобки {}.
Вы создаете strDate
в datumTIjd(_ sender: )
, которая является функцией, которая захватывает strDate
внутри фигурных скобок.Ничто вне функции даже не знает, strDate
существует.Так как вы создаете strDate
в последней строке datumTIjd(_ sender: )
и никогда не используете его, компилятор может оптимизировать его (если он не strDate
, то он живет только для крошечных всплесков времени, так как все, объявленное в области видимости функции, получаетудаляется, когда функция завершена), и вы, вероятно, получите предупреждение о том, что strDate
является неиспользуемой переменной.
Когда вы доберетесь до configuredMailComposeViewController() -> MFMailComposeViewController
вашей ссылки strDate
, однако это не входит в локальную область видимости.или любой другой более высокий объем1028 * add:
var strDate: String = ""
Это переместит strDate
из области функции, в которой он в настоящее время живет, в область класса, позволяя любому методу в классе получить к нему доступ, очистив вашу текущую ошибку.