模態(tài)跳轉(zhuǎn) 跳回到最上級視圖控制器或者指定上級控制器

從VC1模態(tài)跳轉(zhuǎn)到VC2再從VC2跳轉(zhuǎn)到VC3后,使用方法dismissViewControllerAnimated只能從VC3跳轉(zhuǎn)到VC2,那么如何才能直接跳轉(zhuǎn)到VC1?


[self.presentingViewController.presentingViewController.presentingViewControllerdismissViewControllerAnimated:YEScompletion:nil];

使用上述方法可跳回到VC1,此方法在原理上也是遵循著VC3—VC2—VC1跳轉(zhuǎn)邏輯,只是在VC2的過程中給隱藏掉了。

在這里要注意的是presentingViewController 和presentedViewController的區(qū)別;在蘋果官方文檔中對其有如下注釋

// The view controller that was presented by this view controller or its nearest ancestor. ?這個(gè)視圖控制器是由他最近的父視圖控制器模態(tài)跳轉(zhuǎn)來

@property(nullable,nonatomic,readonly)UIViewController*presentedViewController

// The view controller that presented this view controller (or its farthest ancestor.)顯示此視圖控制器(或它的最上級父視圖控制器)的視圖控制器。

@property(nullable,nonatomic,readonly)UIViewController*presentingViewController

所以在此可以使用presenting跳轉(zhuǎn)回任意上級的視圖控制器,只需要調(diào)用多個(gè)presentingViewController方法即可實(shí)現(xiàn)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言的前言 唐巧前輩在微信公眾號「iOSDevTips」以及其博客上推送了我的文章后,我的 Github 各項(xiàng)指標(biāo)...
    VincentHK閱讀 5,566評論 3 44
  • /* UIViewController is a generic controller base class th...
    DanDanC閱讀 2,030評論 0 2
  • 翻譯自“View Controller Programming Guide for iOS”。 1 彈出視圖控制器...
    lakerszhy閱讀 3,776評論 2 20
  • ?二手房、舊房好比人到中年,如果要讓房子的居住質(zhì)量長久穩(wěn)定地保持住,在裝修翻新和保養(yǎng)方面就要下功夫了。特別是舊房墻...
    家裝頭條閱讀 254評論 0 0
  • 兒子一直不愛學(xué)習(xí),每次叫他做作業(yè),態(tài)度都很差,為了讓自己心情愉悅一點(diǎn),我都盡量用很好的語氣和他商量,提醒他做作業(yè),...
    宜繪閱讀 258評論 0 0

友情鏈接更多精彩內(nèi)容