在IOS開辟中,比擬經常使用的切換視圖的方法重要有以下幾種:
1. push、pop
應用舉例(ViewController假定為須要跳轉的掌握器):
[self.navigationController pushViewController:ViewController animated:YES]; //入棧,跳轉到指定掌握器視圖 [self.navigationController popViewControllerAnimated:YES]; //彈棧,前往到前一個視圖 [self.navigationController popToViewController:ViewController animated:YES]; //彈棧 前往指定掌握器地點視圖 [self.navigationController popToRootViewControllerAnimated:YES]; //彈棧 前往根掌握器視圖
2. modal
應用舉例(ViewController假定為須要跳轉的掌握器):
[self presentViewController:ViewController animated:YES completion:nil]; //跳轉到ViewController地點視圖 [self dismissModalViewControllerAnimated:YES]; //加入以後視圖
3. 切換Window的rootViewController
應用舉例(ViewController假定為須要跳轉的掌握器):
UIWindow *Window = [UIApplication sharedApplication].keyWindow; //取得主窗口 window.rootViewController = [[ViewController alloc] init]; //將主窗口的根視圖設置為以後掌握器
4. 將另外一個掌握器的視圖添加為以後掌握器視圖的子視圖
[self.view addSubview: ViewController.View]; //完成龐雜界面的時刻經常使用
扼要引見下各類方法的長處和缺乏:
1、push、pop方法
長處:掌握器切換是可逆的,且原始圖不會燒毀
缺陷:依附於UINavigationController,故須要有一個導航掌握器,與某些界面不須要導航掌握器有能夠會抵觸
push操作是可逆的,即掌握器的切換時可逆的。
2、modal
長處:掌握器切換是可逆的,且原始圖不會燒毀
缺陷:跳轉沒有push方法自在,dismiss方法只能按次序前往,不克不及騰躍, 早年一個modal到後一個時刻,前一個掌握器不會消逝,一向在內存中
3、切換window的rootViewController
長處:跳轉直接敏捷,並且可以燒毀前一個掌握器,由於將window的強援用改成以後掌握器,故前一個掌握器會消逝(ARC情況)
缺陷:視圖跳轉弗成逆
4、將一個掌握器的視圖添加到以後視圖下面
長處:經由過程一個掌握器將另外一掌握器設置為屬性,自在讀取其他掌握器中的視圖從而可以或許完成龐雜UI界面
缺陷:龐雜,多半場所不實用
列表比擬以下:
總結
視圖切換的方法各有益弊,須要依據我們的需求選擇應用的方法,以上就是本文的全體呢榮,程度無限,如有不准確的地方,望列位批駁斧正,配合進修,配合進步!
【比擬IOS開辟中經常使用視圖的四種切換方法】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!