2016-05-09 5 views
0

Я получаю JSON NSDictionary таким образомПрисвоить NSDictionary к глобальному NSMutableDictionary в быстрой

guard let json = try NSJSONSerialization.JSONObjectWithData(data, options: []) as? NSDictionary else { 
       throw JSONError.ConversionFailed 

То, что я хочу сделать сейчас, создать в глобальном масштабе пустой NSMutableDictionary и присвоить этот json к этому глобальному NSMutableDictionary. Как я могу сделать это быстро? Пожалуйста, помогите мне.

+0

Ну, что у вас до сих пор? Трудно ответить на этот вопрос без контекста. – Alexander

+0

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ClassesAndStructures.html – Alexander

+0

var mutableJson = NSMutableDictionary (словарь: json) должен работать. Я даже не уверен, что просто «охранять варсон» может сделать трюк? –

ответ

0

Для этого я бы использовал быстрый словарь.

Или используйте var, если вы хотите его мутировать.

2

Вам нужно иметь глобальный словарь, в котором вы можете получить доступ. Некоторые люди вкладывают глобальные вещи в AppDelegate, но лично мне не нравится делать это, так что еще одно решение, которое вы могли бы сделать, - создать класс Singleton класса Globals и позволить ему хранить новый словарь и любые другие глобальные переменные, которые вам нужны на протяжении всего проект. Таким образом, вы можете просто получить доступ к словарю через класс Globals.

class Globals { 
    static let sharedInstance = Globals() 
    class var mySavedDictionary = [String: AnyObject]() 

    private init() { 
     // 
    } 
} 

Тогда вы могли бы получить доступ к mySavedDictionary экземпляр, то вдоль этих линий ...

guard let json = try NSJSONSerialization.JSONObjectWithData(data, options: []) as? NSDictionary else { 
       throw JSONError.ConversionFailed 
    } 

Globals.sharedInstance.mySavedDictionary = json