2015-04-27 44 views
0

準備比方說,我有如何發送使用結構實例賽格瑞

struct cat { 
var paws: int 
var name: string 
var breed: string 

}

我將如何去segueing一個實例到一個新的目標控制器?特別是,從陣列到新DC的這個實例?

prepare for segue 

{ 
if segue.identifier == "segue" 
var nextVC = segue.desitnationviewcontroller as ... 
nextvc.instance = ? 

}

回答

1

你可以只給它分配是這樣的:

let someCat = cat(paws: 4, name: "Kitty", breed: "Unknown") 
let arrayCat = [cat(paws: 5, name: "Mutant", breed: "Unknown"), 
       cat(paws: 4, name: "John", breed: "Doe")] 

var nextVC = segue.desitnationviewcontroller as SomeViewController 
nextVC.somePropertyName = someCat // or arrayCat if you're using an array 

在你SomeViewController,你必須有cat類型的屬性,你可以直接分配給它。例如:

class SomeViewController: UIViewController { 
    var somePropertyName: cat? // [cat]() if it's an array of type cat 
} 

此外,爲了您的方便,我添加了一個鏈接到Apple的Swift文檔。鏈接是here

+0

現在,讓我問一下。假設我在數組中有兩個cat實例「let catarray = [somecat,someothercat]。那麼我怎麼去繼續這個信息? –

+0

通過改變屬性」somePropertyName「的類型爲[cat]的數組。鼓勵你閱讀「The Swift Programming Language」這本書 – mehmet6parmak

+0

和mehmet6parmak說的那樣,我更新了答案,如果它回答了你的問題,請標記爲回答:) – Eendje