4

Я не могу понять, почему я получаю сбои при возврате к предыдущему виду contoller в стеке навигации. Дело в том, что я использую настраиваемую панель навигации (оригинал застрял, а мои пользовательские кнопки запускают навигацию - вместо этого нажмите и поп).EXC_BAD_ACCESS, когда popViewControllerAnimated в приложении на основе навигации

трассировки я получаю:

Program received signal: “EXC_BAD_ACCESS”. 

#0 0x011a4a60 in objc_msgSend 
#1 0x0044e37c in -[UIImageView(UIImageViewInternal) _canDrawContent] 
#2 0x003bf3df in -[UIView(Internal) _didMoveFromWindow:toWindow:] 
#3 0x003bf1b0 in -[UIView(Internal) _didMoveFromWindow:toWindow:] 
#4 0x003bf1b0 in -[UIView(Internal) _didMoveFromWindow:toWindow:] 
#5 0x003bdfc4 in -[UIView(Hierarchy) _postMovedFromSuperview:] 
#6 0x003b6dfc in -[UIView(Internal) _addSubview:positioned:relativeTo:] 
#7 0x003b514f in -[UIView(Hierarchy) addSubview:] 
#8 0x005ca471 in -[UINavigationTransitionView transition:fromView:toView:] 
#9 0x005c9ed5 in -[UINavigationTransitionView transition:toView:] 
#10 0x0043c606 in -[UINavigationController _startDeferredTransitionIfNeeded] 
#11 0x0043c292 in -[UINavigationController _popViewControllerWithTransition:allowPoppingLast:] 
#12 0x0043bfa9 in -[UINavigationController popViewControllerWithTransition:] 
#13 0x0043f62b in -[UINavigationController popToViewController:transition:] 
#14 0x000124fa in -[BaseViewController bottomNavigationFiredController:] at BaseViewController.m:187 
+0

Пожалуйста, разместите соответствующий код. – Rog 2010-12-07 22:46:17

+2

Установили ли вы NSZombieEnabled? Вы использовали статический анализатор? – 2010-12-07 22:48:39

ответ

2

я столкнулась с той же проблемой, что может быть потому, что ваш последний вид больше не retained.The лучшим способом можно попытаться сохранить свой прежний вид, сделав свойство и синтезирование Это.

Тогда попробуйте использовать

[self.navigationConroller popViewControllerAnimated:YES]; 

или совать к требуемому виду

[self.navigationController popToViewController:myview animated:YES]; 

или поп-музыки до rootview

[self.navigationController popToRootViewControllerAnimated:YES]; 

Позвольте мне знать, если это помогает you.because этот ошибка возникает, когда вы пытаетесь перейти к просмотру, который уже был выпущен.

3

Следует помнить, что когда viewcontroller отталкивается в стеке навигации (в него вводится новый контроллер представления), даже если он не освобождается (сохраняется его стек стека навигации), его мейл-представление освобождается (со всеми его подчинениями, конечно) ты.

Таким образом, этот тип сбоев будет в основном указывать на UI часть управления памятью (наиболее вероятный двойной выпуск autoreleased UIImages, который был моим делом ;-).

Надеюсь, что это поможет кому-то понять, как UINavigationController управляет памятью.

 Смежные вопросы

  • Нет связанных вопросов^_^