Вопрос по iphone, objective-c, ios – Сбой загрузки UITableView, вызванный сообщением, отправленным на освобожденный экземпляр

1

Мое тестовое приложение загружает UITableView и происходит сбой, вызванный[1421:12503] *** -[__NSArrayM class]: message sent to deallocated instance 0x10ae83e0, Процесс остановился на методе main () при сбое.

И этот сбой происходит только в симуляторе для ios 4.3.2, это нормально в устройстве для ios 4.3.2 и ios 5.1, это также нормально в симуляторе для ios 5.1. Я не могу узнать, какой экземпляр будет освобожден неправильно.

Я использовал командуmalloc_history 1421:12503 0x10ae83e0 в терминале, чтобы попытаться найти любую ценную подсказку. Но я получаю только следующую информацию:

<code>    > ALLOC 0x10ae83e0-0x10ae83f7 [size=24]: thread_ac2502c0 |start | main | UIApplicationMain | GSEventRun | GSEventRunModal | CFRunLoopRunInMode | CFRunLoopRunSpecific | __CFRunLoopRun | __CFRunLoopDoSource1 | 

    __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ | mshMIGPerform | 

_XCopyElementAtPosition | _AXXMIGCopyElementAtPosition | _copyElementAtPositionCallback |
     -[UIView(UIViewAccessibility) _accessibilityHitTest:withEvent:] | 
    -[UIView(UIViewAccessibility) __accessibilityHitTest:withEvent:] |
     -[UIView(UIViewAccessibility) _accessibilityHitTest:withEvent:] |
     -[UIView(UIViewAccessibility) __accessibilityHitTest:withEvent:]|
     -[UIView(UIViewAccessibility) _accessibilityHitTest:withEvent:] |
     -[UIView(UIViewAccessibility) __accessibilityHitTest:withEvent:] |
     -[UIView(UIViewAccessibility) _accessibilityHitTest:withEvent:] |
     -[UIView(UIViewAccessibility) __accessibilityHitTest:withEvent:] | 
    -[UIView(UIViewAccessibility) _accessibilityHitTest:withEvent:] | 
    -[UIView(UIViewAccessibility) __accessibilityHitTest:withEvent:] |
     -[UITableViewAccessibility(Accessibility) _accessibilityHitTest:withEvent:] | 
    -[UITableViewSectionElement _accessibilityHitTest:withEvent:] | 
    -[UITableViewSectionElement accessibilityChildren] | 
    -[__NSPlaceholderArray init] | 
    -[__NSPlaceholderArray initWithCapacity:] | 
    +[__NSArrayM __new::] | __CFAllocateObject2 | class_createInstance | calloc | malloc_zone_calloc 
</code>

Не могли бы вы предоставить любую подсказку для этой ситуации? Заранее спасибо!

Ваш Ответ

1   ответ
1

NSArray вы используете для источника данных автоматически выпущен. Проверьте это и сохраните это. Это, вероятно, исправит это, но я не могу быть уверен без некоторого кода, особенно в том, как вы создаете этот массив.

Не забудьте освободить массив вdealloc когда вы закончите.

Error: User Rate Limit Exceeded mobguang

Похожие вопросы