¿Cómo guardar una matriz de estructura personalizada en NSUserDefault con swift?
Tengo una estructura personalizada llamada 'Noticias' que deseo agregar a la matriz de NSUserDefault. Pero muestra el error "Escriba 'Noticias' no se ajusta al protocolo 'AnyObject'".
No quiero cambiar la estructura 'Noticias' a una clase ya que ya se está utilizando para otro código. ¿Hay alguna forma de que pueda cambiar el tipo NSUserDefaults.standardUserDefaults (). ArrayForKey ("savedNewsArray") a [Noticias]?
var savedNews = NSUserDefaults.standardUserDefaults().arrayForKey("savedNewsArray")
var addSavedNews = savedNews as? [News]
addSavedNews.append(News(id: "00", title: newsTitle, source: source, imageURL: imageURL, url: url))
NSUserDefaults.standardUserDefaults().setObject(addSavedNews, forKey: "savedNewsArray")
NSUserDefaults.standardUserDefaults().synchronize()
Aquí está la estructura 'Noticias'.
public struct News {
public var id: String
public var title: String
public var source: String?
public var imageURL: String?
public var date: NSDate?
public var url: String
init(id: String, title: String, source: String, imageURL: String, url: String) {
self.id = id
self.title = title
self.source = source
self.imageURL = imageURL
self.url = url
}
}