視圖切換一般有三種方法:UINavigationController,UITabbarController,模態(tài)窗口屯吊。
一赁项、在一個storyboard中存在多個ViewController想實現(xiàn)他們之間的切換可以使用segue或者代碼實現(xiàn)切換励负。使用segue切換就不能在實現(xiàn)切換過程處理一些方法莺奔。若用代碼如何實現(xiàn)呢鸠珠?
1饺蔑、首先給你需要跳轉(zhuǎn)到的視圖設置storyboard ID.
2锌介、然后根據(jù)Identity和presentViewController方法實現(xiàn)實例化一個視圖并以模態(tài)對方式顯示。
//這里實現(xiàn)的是modal切換
GetDataByPropertyViewController *getDataByPropertyViewController =
(GetDataByPropertyViewController *)[self.storyboard instantiateViewControllerWithIdentifier:@"getDataByPropertyViewController"];
getDataByPropertyViewController.data = _userName.text;//通過屬性傳遞值
[self presentViewController:getDataByPropertyViewController animated:YES completion:nil];
二、在多個storyboard中存在多個ViewController孔祸。使用多個storyboard是為了方便管理不同視圖防止在一個storyboard中存在過多的視圖而導致混亂隆敢。
1、首先也是給storyboard設置storyboard ID.
2崔慧、這時需要創(chuàng)建并實例化一個storyboard拂蝎。
// 通過多個storyboard來管理不同視圖控制器可以避免放在一個storyboard中導致凌亂感覺。
//1.根據(jù)storyboard名字創(chuàng)建storyboard
UIStoryboard *s = [UIStoryboard storyboardWithName:@"second" bundle:nil];
//2.實例化s中的視圖控制器惶室。
UIViewController *vc = [s instantiateViewControllerWithIdentifier:@"second"];
[self.navigationController pushViewController:vc animated:true];
三温自、純代碼實現(xiàn)視圖之間modal切換
直接創(chuàng)建并實例化視圖后調(diào)用presentViewController方法即可。
GetDataByPropertyViewController *getDataByPropertyViewController = [[GetDataByPropertyViewController alloc]init];
getDataByPropertyViewController.data = _userName.text;//傳遞值
[self presentViewController:getDataByPropertyViewController animated:YES completion:nil];