2

Я создаю приложение на основе навигации, которое отображает график, отображаемый с помощью openGL, и кнопки раскрытия списка в виде списка всех элементов, отображаемых на графике, и кнопку раскрытия настроек.UINavigationController с UIView и UITableView

Контроллер навигации также является делегатом таблицы и источником данных, а табличное представление добавляется в представление программно и имеет свой «делегат» и «источник данных» для «я». Графическое представление на основе OpenGL добавляется через IB.

Проблема, с которой я сталкиваюсь, заключается в том, что я пытаюсь нажать контроллер вида (параметры или свойства элемента графа) в методе didSelectRowAtIndexPath. Метод регистрируется, и новое представление нажимается, но tableview остается и скрывает часть отображаемого представления, как будто он имеет другой контроллер навигации.

Я не могу настроить контроллер навигации TableView таким же, как и остальное представление UINavigationControllers.

Кто-нибудь знает, как я могу это исправить?

Мой метод initWithCoder контроллеров навигации, где добавляется TableView, выглядит следующим образом:

elementList = [[UITableView alloc] initWithFrame:tableFrame style:UITableViewStyleGrouped]; 
elementList.dataSource = self; 
elementList.delegate = self; 
[self.view addSubview:elementList]; 

Далее в исходном файле, метод DidSelectRowAtIndexPath где навигационный контроллер выталкивается выглядит следующим образом:

Settings* Controller = [[Settings alloc] init]; 
[self pushViewController:Controller animated:YES]; 
[Controller release]; 

ответ

0

Исправлено, просто добавив UITableView в IB, добавив IBOutlet в elementList и установив UIViewController в качестве делегата и источника данных через IB.

Переполнение стека может быть действительно полезно для того, чтобы помешать вашим проблемам словам, чтобы решение стало очевидным.

Смежные вопросы