我有兩個UIViewControllers(A和B)的故事板。該視圖控制器有一個屬性無法鏈接UIViewController IBOutlets與StoryBoard
@property (nonatomic, retain) IBOutlet UIViewController *viewController;
,我想通過故事板鏈接到B.
出口顯示下的故事板菜單中的IBOutlets部分,但我無法鏈接。 這似乎很奇怪,爲什麼我試圖做到這一點,但我需要它。有人知道如何做到這一點?
我有兩個UIViewControllers(A和B)的故事板。該視圖控制器有一個屬性無法鏈接UIViewController IBOutlets與StoryBoard
@property (nonatomic, retain) IBOutlet UIViewController *viewController;
,我想通過故事板鏈接到B.
出口顯示下的故事板菜單中的IBOutlets部分,但我無法鏈接。 這似乎很奇怪,爲什麼我試圖做到這一點,但我需要它。有人知道如何做到這一點?
IBOutlets是單個視圖控制器內的連接。在視圖控制器內創建對象的引用,以便您可以在代碼中使用這些對象。
您無法從一個視圖控制器創建IBOutlets到另一個視圖控制器。屬性是正確的路線,但您必須在代碼中分配屬性。通常當一個視圖控制器創建另一個視圖控制器時,它可能會設置一個對自身的引用
OtherViewController *otherViewController = [OtherViewController alloc] init];
otherViewController.masterViewController = self;
// at this point "otherViewController" has a reference to the current view controller
如果我有一個父視圖控制器,它的孩子可以在構建時確定,該怎麼辦? –
現在我明白我需要做什麼。我需要創建一個custom segue以實現與將UINavigationController鏈接到其他ViewController並將其標記爲RootViewController時相同的結果。它由segue完成,而不是由IBOutlet完成。
我對晚會有點遲,但是我爲了這份工作而組織了一個階級班。查看git存儲庫以查看正在使用的類:https://github.com/datinc/DATOutletSegue。
基本上它使用segue的標識符連接到父控制器
IBOutlets通常很弱,不保留。 –