我曾試着在類似的問題上尋找答案,但我並不是特別有經驗,並且遇到了麻煩,因此任何幫助都將不勝感激!我的情況如下:當我在我的父視圖控制器中按下按鈕時,下面的代碼用於調用一個Child ViewController(順便說一句,Child實際上是一個TableViewController,但它似乎工作正常,「認爲」這是一個正常的視圖控制器):如何在父視圖控制器和子視圖控制器之間傳輸數據
controller = (storyboard?.instantiateViewController(withIdentifier: "People"))
addChildViewController(controller!)
controller?.view.frame = CGRect(x: 10, y: 200, width: 394, height: 300)
self.view.addSubview((controller?.view)!)
controller?.didMove(toParentViewController: self)
什麼話,我想是從母公司轉移陣列的兒童,在那裏將被用作TableView中的數據?其次,當我從Child的TableView中選擇一個單元格時,我想將相關信息發送給Parent,並讓Child消失。
在情況下,它是感興趣,我已成功使用,收在不同環境下的兒童(當點擊在在顯示孩子的父母時)以下內容:
controller?.willMove(toParentViewController: nil)
controller?.view.removeFromSuperview()
controller?.removeFromParentViewController()
我真的很感激任何意見,即使它是一個可以幫助的東西的鏈接!
可以傳遞數組就像傳遞任何兩個視圖控制器之間的數據的方式。在'addChildViewController(controller!)'行後面,你可以添加'controller.array = self.array'。並返回,您可以使用委託方法。 – CoderFrom94
您可以將'parentsViewVontroller'和'parentsViewVontroller''''中的屬性設置爲'childViewController'並將值傳遞給此變量,或者您可以創建'childViewController'的委託並且可以接收事件或者可以使用這些塊。 – TheTiger