Ios導覽列返回到指定的頁面

來源:互聯網
上載者:User

標籤:一個   無法   通過   自己   add   object   指定   set   anim   

在自己的項目實現中有這樣的一個需求。一般情況下我們的導覽列返回按鈕,是上個頁面跳轉過來,點擊返回按鈕返回到上來介面。但是在實際需求中有的並不是這麼簡單的。有的介面返回是只確定的介面。所以當時自己在實現的時候因為不太瞭解跳轉的機制,導致無法實現。後來在老大,路哥(大牛)的知道下明白了。首先我們要知道導覽列的跳轉是通過棧的形式進行的。所以我們每次跳轉時,就會在棧裡多出一個介面的對象。棧中的數就會增加,當我們需要返回跳轉到前面的某一個介面時,需要我們在棧中尋找這個介面。我們需要一個數組來存放資訊,當找到了這個介面時,把這個導航進行跳轉就可以了。下面是實現的代碼,其實很簡單的。(我們的返回按鈕需要重新自己定義一下,這個是定義後點擊方法)

-(void)backAction{

    UINavigationController *navVC = self.navigationController;

    NSMutableArray *viewControllers = [[NSMutableArray alloc] init];

    for (UIViewController *vc in [navVC viewControllers]) {

        [viewControllers addObject:vc];

        if ([vc isKindOfClass:[MyNeedJumpVC class]]) {

            break;

         }

    }

     [navVC setViewControllers:viewControllers animated:YES];

}?

?self.navigationController是當前的頁面;

MyNeedJumpVC 是我們需要跳轉的頁面;

就是這麼簡單。當然了,你也可以通過導覽列棧的個數來進行跳轉,但是你需要知道目的頁面在棧的個數是幾,這個實現起來有點複雜,也是我開始的方法,後來用上面的方法實現分分鐘就搞定了!哈哈!有什麼不懂可以給我留言。

Ios導覽列返回到指定的頁面

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.