从tabBarController的一个item上的控制器跳转到另一个item上的控制器
先從習(xí)慣性的tabBarController開始,很多應(yīng)用的外框都是用這個(gè)開始的,而從tabBarController的一個(gè)item上的控制器跳轉(zhuǎn)到另一個(gè)上的,往往都是直接通過點(diǎn)擊tabBar上的不同item來切換,
借下別人的圖...?但如果要求如圖從item3下的某個(gè)控制器跳轉(zhuǎn)到item1上的根控制器要怎么跳呢?
可以這么看流程:
這個(gè)流程的跳轉(zhuǎn)其實(shí)關(guān)乎應(yīng)用開發(fā)所需要的業(yè)務(wù)流程,假如你從item3跳轉(zhuǎn)到item1上的控制器后,下次點(diǎn)擊item3時(shí),如果需要的是顯示item3的根控制器時(shí),那可以按這個(gè)跳轉(zhuǎn)。
注意,要實(shí)現(xiàn)這些跳轉(zhuǎn),最好就是搞一個(gè)類來保存實(shí)例化后的tabBarController,方便在整個(gè)程序里面調(diào)用
如:
先回到本item3的根控制器,不顯示動(dòng)畫
[self.navigationController popToRootViewControllerAnimated:NO];
通過你的方法獲取
UITabBarController *tabCtl
然后強(qiáng)制切換tabBarController的選中的item為item1就可以了
tabCtl.selectedIndex = 0;?
假如item3不需要回到根控制器,那么只需要調(diào)用
tabCtl.selectedIndex就可以了,但要確保有獲取到UITabBarController如果是跳轉(zhuǎn)到item1的第二個(gè)控制器,可以這樣,如果該控制器未實(shí)例化,也需要實(shí)例化,否則跳轉(zhuǎn)不了 1 UINavigationController *nav = (UINavigationController *)tabCtl.viewControllers[0]; 2 ProjectViewController *proCtl = [[ProjectViewController alloc]init]; 3 [nav pushViewController:proCtl animated:YES];
?
應(yīng)用里如果用了防止tabBar雙點(diǎn)擊的代理方法時(shí),記得調(diào)用該代理方法
?
轉(zhuǎn)載于:https://www.cnblogs.com/fcug/p/5626619.html
總結(jié)
以上是生活随笔為你收集整理的从tabBarController的一个item上的控制器跳转到另一个item上的控制器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hibernate中Entity实体类的
- 下一篇: mojo 关闭utf8