簡體   English   中英

通過子類傳遞子類的最佳方法是什么?

[英]What is best way to pass a subclass through a segue?

我有一個向下鑽取的Tableview應用程序,其中包含兩個tableview控制器和一個詳細視圖。 數據模型是一個包含11個子類的類,每個子類一個。 所有子類屬性都是字符串或包含字符串數組。 沒有空屬性。 所有子類都具有相同的屬性,但是其子類具有唯一的數據。 我的想法是使用didSelectRow方法獲取一個indexpath.row整數,該整數將用於初始化相應的子類並將其通過segue傳遞給第二個tableview控制器,該控制器將包含詳細視圖所需的所有數據。 我知道如何使用segue傳遞數據收集。 但是,傳遞整個子類似乎涉及另一種方法。 不知道如何解決這個問題。 我是否需要在第二個視圖控制器中初始化具有與子類相同的屬性類型但不包含數據的類? 第二個表視圖控制器中的initialize事件將在viewWillLoad方法中發生。 我的假設是某人可能知道更好的方法。

將數據從View控制器傳遞到另一個控制器的標准方法是使用委托。 聲明一個自定義協議,該協議具有您需要從第二個View控制器訪問的功能和屬性。 這樣,您將與第二個視圖控制器共享類實例。 您可以在源視圖控制器中實現協議,並在執行segue之后將源視圖控制器的引用傳遞給第二個視圖。 您將在應在源視圖控制器中聲明的函數prepare(對於segue:UIStoryboardSegue,sender:任意?)中設置委托。 調用performSegue之后將調用此函數。 希望這會幫助你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM