Я пытаюсь прочитать данные из массива, который сохраняется в пользовательских по умолчанию, но типы объектов вызывают конфликты.Редактирование массива, сохраненного для пользовательских значений по умолчанию SWIFT
if NSUserDefaults.standardUserDefaults().valueForKey("data")==nil{
let arrya : Array = ["Apple", "Apricot", "Banana", "Blueberry", "Cantaloupe", "Cherry",
"Clementine", "Coconut", "Cranberry", "Fig", "Grape", "Grapefruit",
"Kiwi fruit", "Lemon", "Lime", "Lychee", "Mandarine", "Mango",
"Melon", "Nectarine", "Olive", "Orange", "Papaya", "Peach",
"Pear", "Pineapple", "Raspberry", "Strawberry"]
NSUserDefaults.standardUserDefaults().setObject(arrya, forKey: "data")
}
var data = NSUserDefaults.standardUserDefaults().objectForKey("data")
Я использую objectForKey не valueForKey из ответа на вопрос this.
Этот вопрос будет отвечать на мой вопрос, однако ... ну ... это не так. У меня все еще есть проблемы. Например:
Попытка
data.count
возвращает ошибку:
Value of type 'AnyObject?' not unwrapped; did you mean to use '!' or '?'?
Trying:
cell.textLabel?.text = data[0]
возвращает ошибку:
Could not find an overload for 'subscript' that accepts supplied arguments
Почему типы несовместимы? Я надеялся, что я получить от пользователя значения по умолчанию тот же тип, как это:
["hola", "alo", "ya", "shalom", bounjour", 1, 3, "ai"]
Большое спасибо за любой ответ заранее. Все приветствуются и очень благодарны!