iOS - rootViewController 切換過渡動畫

使用UIView的動畫過渡方法 transition(with:duration:options:animations:completion:) 來執(zhí)行視圖切換動畫:
kAppDelegate.window!:這里假設 kAppDelegate 是你的應用程序代理對象变屁,用來獲取應用程序的主窗口抖韩。使用感嘆號 (!) 表示強制解包郭毕,因為 window 的類型是 UIWindow? 可選類型奔坟,但我們假設這里不為 nil。
duration: 0.5:動畫持續(xù)時間為 0.5 秒。
options: .transitionCrossDissolve:動畫過渡效果為交叉淡入淡出,這意味著舊視圖會漸漸淡出咱娶,新視圖會漸漸淡入。

有前置聲明:
let kAppDelegate: AppDelegate = UIApplication.shared.delegate as! AppDelegate

UIView.transition(with: kAppDelegate.window!, duration: 0.5, options: .transitionCrossDissolve, animations: {
      let oldState = UIView.areAnimationsEnabled
      UIView.setAnimationsEnabled(false)
      kAppDelegate.window?.rootViewController = TabBarViewController()
      kAppDelegate.window?.makeKeyAndVisible()
      UIView.setAnimationsEnabled(oldState)
}, completion: nil)
  • let oldState = UIView.areAnimationsEnabled:保存當前動畫狀態(tài)煎楣,即是否啟用了動畫豺总。
  • UIView.setAnimationsEnabled(false):將動畫狀態(tài)設置為 false,這會暫時禁用視圖的動畫效果择懂。
  • kAppDelegate.window?.rootViewController = TabBarViewController():設置應用程序主窗口的根視圖控制器為 TabBarViewController() 的實例,這里假設 TabBarViewController() 是你的標簽欄控制器另玖。
    -kAppDelegate.window?.makeKeyAndVisible():確保應用程序主窗口可見并處于關鍵狀態(tài)困曙。
  • UIView.setAnimationsEnabled(oldState):恢復之前保存的動畫狀態(tài),這里會重新啟用視圖的動畫效果谦去。
  • completion: nil:這里的 completion 塊為 nil滋迈,表示動畫完成后不執(zhí)行任何額外操作卸例。
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子睹耐,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異局劲,居然都是意外死亡,警方通過查閱死者的電腦和手機奶赠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門鱼填,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人毅戈,你說我怎么就攤上這事苹丸。” “怎么了苇经?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵赘理,是天一觀的道長。 經(jīng)常有香客問我扇单,道長感憾,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任令花,我火速辦了婚禮阻桅,結果婚禮上,老公的妹妹穿的比我還像新娘兼都。我一直安慰自己嫂沉,他們只是感情好,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布扮碧。 她就那樣靜靜地躺著趟章,像睡著了一般。 火紅的嫁衣襯著肌膚如雪慎王。 梳的紋絲不亂的頭發(fā)上蚓土,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音赖淤,去河邊找鬼蜀漆。 笑死,一個胖子當著我的面吹牛咱旱,可吹牛的內(nèi)容都是我干的确丢。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼吐限,長吁一口氣:“原來是場噩夢啊……” “哼鲜侥!你這毒婦竟也來了?” 一聲冷哼從身側響起诸典,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤描函,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體舀寓,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡胆数,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了基公。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片幅慌。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖轰豆,靈堂內(nèi)的尸體忽然破棺而出胰伍,到底是詐尸還是另有隱情,我是刑警寧澤酸休,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布骂租,位于F島的核電站,受9級特大地震影響斑司,放射性物質發(fā)生泄漏渗饮。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一宿刮、第九天 我趴在偏房一處隱蔽的房頂上張望互站。 院中可真熱鬧,春花似錦僵缺、人聲如沸胡桃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽翠胰。三九已至,卻和暖如春自脯,著一層夾襖步出監(jiān)牢的瞬間之景,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工膏潮, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留锻狗,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓戏罢,卻偏偏與公主長得像屋谭,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子龟糕,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344