2015-11-18 5 views
0

У меня есть этот массив:NSArray добавить в Swift

var menuTableArray: NSArray = [["image": "", "title": "test"], 
            ["image": "", "title", "test"]] 

как добавить новые данные в этом массиве?

+0

'var anArray: [String] = [" foo "]; anArray.append («bar») 'Лучше избегать' NSArray' и использовать 'Array', который является быстрым классом. Объявление его как «var» позволяет добавлять элементы. – GoodSp33d

ответ

1

Вы не можете добавить NSArray, так как это неизменяемый, даже если вы объявите его как var. Вместо этого используйте NSMutableArray.

var menuTableArray: NSMutableArray = [["image": "", "title": "test"], 
             ["image": "", "title": "test"]] 
menuTableArray.addObject(["image":"an image", "title": "test2"]) 
+0

Возможно, было бы лучше использовать 'var fooBar: Array [String]' вместо использования 'NSMutableArray', если не будет определенной причины использовать классы' NS'. – GoodSp33d

+0

Да, это справедливая точка. – squarefrog

2

Почему вы используете NSArray здесь? Если у вас нет конкретной причины использовать NSArray, вам следует просто использовать массив Swifts, например

var menuTableArray: [[String: String]] = [["image": "", "title": "test"], 
           ["image": "", "title", "test"]]