假設我有3個控制器,即A,B和C.A到B我有一個推動賽格。而且我有一個從B推到C的現在。現在,如果我必須直接從A到C製作一個Segue,然後不用B控制器,我該如何實現?如何通過在iOS中沒有直接推送的控制器來使另一個控制器繼續運行?
感謝
假設我有3個控制器,即A,B和C.A到B我有一個推動賽格。而且我有一個從B推到C的現在。現在,如果我必須直接從A到C製作一個Segue,然後不用B控制器,我該如何實現?如何通過在iOS中沒有直接推送的控制器來使另一個控制器繼續運行?
感謝
您可以手動推送視圖控制器在navigationController這樣
UINavigationController *navigation = [self navigationController];
在此之後
只需要插入您的B觀看在此navigationController這樣
[navigation pushViewController:yourController animatte:yes];
在你的情況可以如下設置視圖控制器:
Navigation_Controller -> VC_A -> VC_B -> VC_C
您可以使用故事板創建視圖控制器,然後將每個視圖控制器作爲故事板ID。
現在你可以瀏覽到您想要的VC,如下:
- (IBAction)goToB:(UIButton *)sender {
VCB *theVCB = [self.storyboard instantiateViewControllerWithIdentifier:@"B"];
[self.navigationController pushViewController:theVCB animated:YES];
}
- (IBAction)goToC:(UIButton *)sender {
VCC *theVCC = [self.storyboard instantiateViewControllerWithIdentifier:@"C"];
[self.navigationController pushViewController:theVCC animated:YES];
}
注意:您可以實現通過連接VCB和使用VCC塞格斯但這是不可取的相同的結果。
使直接從A到C什麼是阻止你? –
它不建議在視圖控制器之間有多個節點。正確的方法是將所有三個VC都嵌入到導航控制器中。根據需要讓導航控制器顯示和解除視圖控制器。 – TheAppMentor