2016-07-25 2 views
0

Я новичок в Xcode, и мне интересно, как я могу исправить проблему с предупреждением, которая у меня есть. Мой код: localNotification.alertBody = "your person, \(lblUsername.text), is behind schedule for your meeting at \(lblScheduleDate.text)добавление сохраненного значения метки в предупреждение

Что я получаю в качестве предупреждения является:. «ваш человек, опционный (» джессика «), отстает от графика для встречи в Optional (» 25 июля | 1:30")

Я задаюсь вопросом, как избавиться от

  1. в Optionals
  2. котировки вокруг имени и дате/времени
  3. Скобки вокруг имени и даты/времени.
+0

Попробуйте развернуть эту переменную с помощью: lblUsername.text! и lblScheduleDate.text! – Jonas

+0

по какой-то причине он не переводил правильно в моем вопросе, теперь у меня есть это: localNotification.alertBody = «ваш помощник, \ (lblUsername.text), отстает от графика для вызова в \ (lblScheduleDate.text). ожидание." Так должно быть: localNotification.alertBody = «ваш помощник, lblUsername.text !, отстает от графика для вызова в lblScheduleDate.text !. Пожалуйста, подождите.» –

+0

Добавьте восклицательный знак перед обеими закрывающимися скобками, после «text» – Jonas

ответ

2

Вы можете избавиться от всех трех одновременно. Все, что вам нужно сделать, это развернуть дополнительные опции. Всякий раз, когда вы печатаете/показываете текст, добавьте ! рядом с переменной. Например:

var username:String? = "Jessica" 
print(username!) 

Другой способ сделать это состоит в использовании if-let заявление:

if let user = username 
{ 
    print(user) 
} 

Хотя это гораздо больше и неудобно, так намного безопаснее и предотвратить

fatal error: unexpectedly found nil while unwrapping an Optional value

из случается.

P.S. - В следующий раз положите свой исходный код в свой пост, чтобы на вопрос можно было ответить лучше. В будущем вы, скорее всего, будете забиты.

+0

спасибо за p.s. Я новичок в размещении здесь. как вы это добавляете? –

+0

В редакторе вы увидите две фигурные скобки. Нажмите на них, затем замените «код» на свой код. – Jack

+0

Не делайте этого. Принудительное развертывание с '!' Приводит к сбою, когда значение равно нулю.Вместо этого используйте «необязательное связывание», например, с 'if let'. Объясняется в [Swift guide] (https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html#//apple_ref/doc/uid/TP40014097-CH5-ID309), и есть также интересный, прочитанный в [этом каноническом Q & A] (http://stackoverflow.com/questions/32170456/what-does-fatal-error-unexpectedly-found-nil-while-unwrapping-an-optional-valu). – Moritz

2

Попробуйте принудительно развернуть переменную с помощью: lblUsername.text! и lblScheduleDate.text!

+0

Не делай этого. Принудительное развертывание с '!' Приводит к сбою, когда значение равно нулю. Вместо этого используйте «необязательное связывание», например, с 'if let'. Объясняется в [Swift guide] (https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html#//apple_ref/doc/uid/TP40014097-CH5-ID309), и есть также интересный, прочитанный в [этом каноническом Q & A] (http://stackoverflow.com/questions/32170456/what-does-fatal-error-unexpectedly-found-nil-while-unwrapping-an-optional-valu). – Moritz

Смежные вопросы