Я портирую довольно простое приложение для iPhone с навигацией в приложение Split View для iPad.У меня есть два вложенных уровня навигации в главном представлении.Пользователь выбирает значение из первой таблицы и загружает 2-ую таблицу.Выбор значения во второй таблице загружает элемент Detail для подробного представления.Я (наконец-то) заставил эту часть работать.
Когда я пытаюсь снова открыть главное представление, будь то использование кнопки всплывающего меню в портретной ориентации или просто возврат к ней и нажатие на запись в альбомной ориентации,происходит сбой с GDB: Программа получила сигнал: ошибка «EXC_BAD_ACCESS».Я не могу найти нигде в коде, чтобы разобраться в проблеме.
Я довольно близко следую шаблону SplitView.Я действительно только схожу с проторенной дорожки, добавив второй 2nd TableViewController.Мой RootViewController загружает второй TableViewController.
Вот код:
Во-первых, в RootViewController.m я загружаю второе TableView, когда элемент выбран на первом (в didSelectRowAtIndexPath):
RequestsTableViewController *requestsTableViewController=[[RequestsTableViewController alloc] initWithNibName:@"RequestsTableViewController" bundle:nil];
requestsTableViewController.selectedDepartmentID = self.selectedDepartmentID;
[self.navigationController pushViewController:requestsTableViewController animated:YES];
[requestsTableViewController release];
Затем во втором TableViewController, RequestsTableViewController, я загружаю элемент сведений на основе его выбора в didSelectRowAtIndexPath:
TrackerSplitViewAppDelegate *appDelegate = (TrackerSplitViewAppDelegate *)[[UIApplication sharedApplication] delegate];
Request *aRequest = [appDelegate.requests objectAtIndex:indexPath.row];
appDelegate.detailViewController.thisRequest = aRequest;
appDelegate.detailViewController.detailItem = [NSString stringWithFormat:@"Row %d", indexPath.row];
[appDelegate release];
Приложение загружает и устанавливает мои значения, и все работает нормально,Я могу легко перемещаться между двумя TableViewControllers с автоматически сгенерированной навигацией, пока я не нажимаю на детали.Как только я нажимаю на деталь и она загружается, я вырываю приложение, если пытаюсь снова получить доступ к MasterView.Я ничего не делал с файлами пера, чтобы подключить эту навигацию, все работало перенесено из приложения iPhone (кроме этого сбоя).Я не могу найти ни одного примера с несколькими главными представлениями, чтобы увидеть, где моя связь отличается.Я подозреваю, что мне нужно что-то настроить в конструкторе интерфейсов или что-то в этом роде, но, поскольку я не могу точно сказать, где происходит сбой, мне трудно начинать.Или мне просто нужно перенести исходный вид обратно в стек программным образом после выбора детали?Это похоже на кулак.