2016-03-02 61 views
0

我目前有一個「人物」數組陣列,他們有姓名和地址。它看起來像這樣:不斷將項目從一個segue添加到一個數組中swift

let c1 = Person(name:"Bob Smith",address:"100 Main Street") 
let c2 = Person(name:"Add Person...",address:"") 
var pDirec = [[c1],[c2]] 

當「添加個人...」單元在我的表視圖挖掘,它會將用戶帶到另一種觀點認爲,他們可以給一個人的名稱/地址並提交,所以數據被傳回原始視圖。我只是不知道如何將第一部分中的新人對象添加到現有數組中。因此,舉例來說,如果你通過一個人的「C3」後面,陣列看起來像:

pDirec = [[c1,c3],[c2]] 

而你也可以添加越來越多的人以這種方式。

+0

我不明白爲什麼如果它是一個'[Person]的數組''你有'[[c1],[ c2]]',你能解釋一下嗎? –

+0

對不起,這是一個[Person]數組的數組,我會更新這個問題。 – chrisz

+0

當數據傳回時,獲取'pDirec'的索引0處的數組並添加'Person'項。但是,如果'Person'是'struct'而不是'class',則由於結構的值語義,必須將數組寫回'pDirec'的索引0。 – vadian

回答

0

pDirec.first?.append(c3)pDirec[0]?.append(c3)

將追加c3到pDirec多維陣列中的第一陣列。如果尚未啓動數組,則我們使用?,因此在嘗試添加時不會崩潰。

0

請注意,您創建的數組當前將1人數組添加到數組中。你可能想改變這種狀況到:

var pDirec = [c1, c2] as? NSMutableArray

之後,您可以將對象添加到該數組:

pDirec.addObject(newPersonObject)

以上應該產生一個數組,看起來像:

[c1, c2, c3]

相關問題