2017-07-03 54 views
2

我遇到了這個奇怪的錯誤:有時當我推視圖控制器(VC1 - > VC2)時,應用程序被凍結(它不會崩潰,只是凍結)。沒有阻塞主線程。當我檢查查看層次結構時,VC2實際上是在「UIParallaxDimmingView」之下。另外,調用viewDidLoad,viewDidAppeariOS - 當導航控制器按下時,應用程序凍結

如何呈現VC2:

VC *vc2 = [[VC alloc]initWithStyle:UITableViewStyleGrouped]; 
[self.navigationController pushViewController:vc2 animated:YES]; 

所以問題是在加載VC2,但不會出現在屏幕上。這裏是視圖層次的截屏,高亮藍色的看法是UIParallaxDimmingView,這是擋住了我的所有VC2內容,以及VC1實際上是在VC2 ...

enter image description here

,這裏是我的籌碼跟蹤

0x10016b8dc <+0>: sub sp, sp, #0x40    ; =0x40 
0x10016b8e0 <+4>: stp x29, x30, [sp, #0x30] 
0x10016b8e4 <+8>: add x29, sp, #0x30   ; =0x30 
0x10016b8e8 <+12>: stur wzr, [x29, #-0x4] 
0x10016b8ec <+16>: stur w0, [x29, #-0x8] 
0x10016b8f0 <+20>: stur x1, [x29, #-0x10] 
0x10016b8f4 <+24>: bl  0x1004105a4    ; symbol stub for: objc_autoreleasePoolPush 
0x10016b8f8 <+28>: adrp x1, 1044 
0x10016b8fc <+32>: add x1, x1, #0x888   ; =0x888 
0x10016b900 <+36>: adrp x30, 1057 
0x10016b904 <+40>: add x30, x30, #0xd70   ; =0xd70 
0x10016b908 <+44>: ldur w8, [x29, #-0x8] 
0x10016b90c <+48>: ldur x9, [x29, #-0x10] 
0x10016b910 <+52>: ldr x30, [x30] 
0x10016b914 <+56>: ldr x1, [x1] 
0x10016b918 <+60>: str x0, [sp, #0x18] 
0x10016b91c <+64>: mov x0, x30 
0x10016b920 <+68>: str w8, [sp, #0x14] 
0x10016b924 <+72>: str x9, [sp, #0x8] 
0x10016b928 <+76>: bl  0x1004106c4    ; symbol stub for: objc_msgSend 
0x10016b92c <+80>: bl  0x10040fc20    ; symbol stub for: NSStringFromClass 
0x10016b930 <+84>: mov x29, x29 
0x10016b934 <+88>: bl  0x100410718    ; symbol stub for: objc_retainAutoreleasedReturnValue 
0x10016b938 <+92>: mov x9, #0x0 
0x10016b93c <+96>: ldr w8, [sp, #0x14] 
0x10016b940 <+100>: str x0, [sp] 
0x10016b944 <+104>: mov x0, x8 
0x10016b948 <+108>: ldr x1, [sp, #0x8] 
0x10016b94c <+112>: mov x2, x9 
0x10016b950 <+116>: ldr x3, [sp] 
0x10016b954 <+120>: bl  0x10040fd28    ; symbol stub for: UIApplicationMain 
0x10016b958 <+124>: stur w0, [x29, #-0x4] 
0x10016b95c <+128>: ldr x1, [sp] 
0x10016b960 <+132>: mov x0, x1 
0x10016b964 <+136>: bl  0x1004106e8    ; symbol stub for: objc_release 
0x10016b968 <+140>: ldr x0, [sp, #0x18] 
0x10016b96c <+144>: bl  0x100410598    ; symbol stub for: objc_autoreleasePoolPop 
0x10016b970 <+148>: ldur w0, [x29, #-0x4] 
0x10016b974 <+152>: ldp x29, x30, [sp, #0x30] 
0x10016b978 <+156>: add sp, sp, #0x40    ; =0x40 
0x10016b97c <+160>: ret` 
+0

你如何加載VC2?代碼片段? –

+0

你檢查過CPU了嗎? –

+0

@HashmatKhalil請看我更新的問題,只是正常的方式,沒有什麼奇怪的 –

回答

0

我設法找到一個解決方案here

所以我interactivePopGestureRecognizer啓用即使在當前可見視圖控制器是是導航唯一的VC堆棧。只需禁用它即可解決該錯誤。

相關問題