Проблема панели вкладок: - [UILayoutContainerView hash]: сообщение отправлено освобожденному экземпляру - PullRequest
0 голосов
/ 11 марта 2009

Мне кажется, что я занимаюсь чем-то вроде самой панели вкладок, контроллера навигации или ???, и это происходит, когда я подхожу к конкретному контроллеру представления и затем нажимаю на панель вкладок для конкретной вкладки (например, Я нажимаю на среднюю вкладку, из 3 вкладок, нет проблем, но если я нажимаю на крайнюю правую вкладку, я получаю сбой). Моя программа в основном завершена, и на данный момент у меня довольно большая база кода. У любого есть какие-либо предложения для отладки этого - я ждал до сих пор, чтобы работать над этим. В моем смысле, стоит посмотреть на процедуры dealloc и любые выпуски в соседнем коде. Вы можете предложить что-нибудь менее «ручное»? Спасибо!

1 Ответ

1 голос
/ 12 марта 2009

Не зная больше, вот как бы я поступил об этом.

  1. В программе просмотра журнала введите backtrace после возникновения исключения в gdb. Надеюсь, это даст вам точную строку, которая показывает, какой объект освобождается слишком много раз.

  2. Найдите ссылки на этот объект и посмотрите, можете ли вы найти ненужный релиз, авто-релиз и т. Д. Путем проверки. Вы не должны выпускать / автоматически выпускать что-либо, что не принадлежит вашему пути выполнения (через alloc).

Возможно, вам повезет распечатать счет сохранения для этого объекта (отправив сообщение retainCount вызывающему объект). Хотя документация разработчика настоятельно рекомендует, чтобы это было бессмысленным и бесполезным, я нашел полезным иногда помочь мне сузиться, когда я что-то освободил случайно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...