exc_bad_access с GridView, возможный сбой управления памятью? - PullRequest
0 голосов
/ 07 марта 2012

У меня есть следующий код, который пытается настроить GridView, и у меня есть подкласс GridviewController, который управляет источником данных.Это код, который используется для его настройки.

            AQGridView* gridView = [[AQGridView alloc] initWithFrame:frame];
            NUBMyCpGridviewController* controller = [[NUBMyCpGridviewController alloc] init];
            gridView.dataSource = controller;
            gridView.delegate = controller;
            [gridView reloadData];

Однако приложение аварийно завершает работу при попытке доступа к источнику данных.Это строка (в классе Gridview), которая дает попытки вызвать метод и выдает его:

AQGridViewCell * cell = [_dataSource gridView: self cellForItemAtIndex: index];

Ошибка: exc_bad_access.В чем может быть проблема?Это потому, что объект выпущен слишком рано?Как я могу исправить это?

1 Ответ

0 голосов
/ 07 марта 2012

Ты прав;проблема, скорее всего, в том, что ваш NUBMyCpGridviewController освобождается.Исходя из вашего фрагмента кода, похоже, что никто его не сохраняет.

Я бы предложил сделать его strong @property того класса, в котором выполняется код вашего фрагмента.

...