Никогда не используйте принудительное приведение с if let
.Никогда не применяйте силу к дополнительному.Не имеет никакого смысла.
Даже после того, как вы исправите это, у вас есть проблема.Сначала вы записываете строку в пользовательские значения по умолчанию, если для ключа еще ничего нет.Но затем вы пытаетесь прочитать массив.Это никогда не сработает.
Упростите свой код и всегда пишите прочитанный массив.
var items = UserDefaults.standard.array(forKey: "To Does") as? [String] ?? []
items.append(textInput.text!)
UserDefaults.standard.set(items, forKey: "To Does")