作者y03131003 (Jimmy)
看板MacDev
标题[问题] dismissViewController
时间Wed Feb 26 15:23:05 2014
我有A, B, C, D 四个viewController
A 是 rootViewController(TabBarViewController)
B 是 用AVFoundation写的相机
A 用 modal 的方式叫出了 B
B 用 modal 的方式叫出了 C
C 用 modal 的方式叫出了 D
我想在D里按一个按钮回到A
一开始是在storyboard里直接拉一个segue到A
然後performSegueWithIdentifier
不过这样似乎有memory leak的问题,多重复几次这个步骤记忆体就直线上升
最後导致当机
後来查了一下发现要回到 A 只要在 D里取得rootViewController
然後rootViewController呼叫 dismissViewController 就行了
如下
[[[[UIApplication sharedApplication] keyWindow] rootViewController]
dismissViewControllerAnimated:NO completion:nil];
这样的确可以成功,可是按下按钮後大概要等2秒才会回到A..
请问有办法按下的瞬间就回到A吗?
用performSegue的方法可以瞬间,但是多重复几次就当机了...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.218.72
1F:→ y03131003:我觉得很有可能是因为中间有个相机的viewController.. 02/26 16:45
2F:→ uranusjr:你先一层一层 dismiss 看看到底是哪一个在慢 02/26 17:18
3F:→ howdiun:相机要关掉比较好吧.... 02/26 17:21