Pergunta

Eu tenho um aplicativo onde eu estou tentando vistas de carga de forma recursiva. Então, eu tenho um ponto de vista (theViewController) que é capaz de perfurar para baixo em uma outra visão do mesmo tipo (theViewController). Eu tenho a multa recursão de trabalho e os botões traseiros funcionar muito bem. Mas eu estou tentando implementar uma função que faz algum trabalho e, em seguida, descarrega o ponto de vista atual.

Em um outro ponto no meu código eu tenho a seguinte:

MyAppDelegate *delegate = [[UIApplication sharedApplication] delegate];
UINavigationController *navigationController = [delegate navigationController];
[navigationController popViewControllerAnimated:YES];

Também é no final de uma função que faz alguns trabalhos para que view (theSecondViewController), mas ele carrega uma visão diferente (theViewController).

Meu problema é quando eu uso este código SAME na minha theViewController se decompõe. Bem, tipo isso. Eu acho que atravessa e faz estalar o controlador desligado, mas quando ele tenta recarregar a vista (theViewController) para a esquerda dele (acima dela, no entanto você quer pensar sobre isso) que ele morra. Uma vez em uma lua azul que vai cuspir:

malloc: *** error for object 0xfb9640: double free
*** set a breakpoint in malloc_error_break to debug

Mas normalmente ele só morre sem erros (pelo menos eu acho que isso é o que este material é):

GNU gdb 6.3.50-20050815 (Apple version gdb-966) (Tue Mar 10 02:43:13 UTC 2009)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-apple-darwin".sharedlibrary apply-load-rules all
Attaching to process 15739.

Qualquer ajuda para entender por que ele pode morrer na recarregar uma página seria muito útil.

Update: Se houve um erro com a ponta não seria um problema chegar mais cedo? Eu acredito que ele está correto. Estou apenas não tenho certeza onde o código está indo atrás [navigationController popViewControllerAnimated: YES]; Eu pensei que iria para viewDidLoad do próximo vista. Mas eu tenho uma mensagem NSLog lá e sua não aparecendo.

A navegação que posso fazer até agora é a seguinte:

userViewController -> theViewController -> ... -> theViewController -> theSecondViewController 

Se a sua linha reta e em linha reta fora ele funciona bem. O código acima funciona em theSecondViewController mas não theViewController

Foi útil?

Solução 2

O problema que tive foi que eu estava lançando NSManagedObjects quando eu não deveria ter sido.

Outras dicas

Tem certeza os nibs são configurados corretamente? Eu tive isso aconteceu comigo e que acabou por ser a ponta. Provavelmente é, eu não me lembro exatamente o que estava errado com a ponta. Faz algum tempo.

Mas isso é algo para verificar. Além disso, você já tentou passo que o código e identificar onde ele pára de funcionar? Não tenho a certeza que vai ser possível dar uma resposta direta com base no que é fornecido acima ...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top