NavigationController будет / сделал ShowViewController - Как сказать, какой? - PullRequest
1 голос
/ 09 марта 2010

С учетом методов делегата UINavigationController:

-(void)navigationController:(UINavigationController*)navigationController (will/did)ShowViewController:(UIViewController*)viewController animated:(BOOL)animated

Как узнать или сравнить, какой экземпляр контроллера представления относится к событию?

Я занимаюсь разработкой приложения, которое отображает графики с сенсорным управлением с использованием OpenGL. Корневое представление содержит график, а заданные контроллеры навигации содержат параметры. Я хотел бы отключить анимацию (рендеринг) графика, когда пользователь отходит от него, и повторно включить его, когда он вернется.

(Я знаю, что рендеринг должен выполняться после сенсорных событий, а не постоянно с включением / выключением; код шаблона openGL, на котором я построил приложение, не делает это легким изменением, но я в конце концов обойду его! )

(И еще кое-что; это приложение панели вкладок с контроллером навигации на каждой вкладке. По какой-то причине события (делали / будут) (появляются / исчезают), похоже, запускаются только при смене вкладок, а не в положении на навигации стек контроллера.)

Ответы [ 2 ]

1 голос
/ 09 марта 2010

Исправлено со следующим:

if (viewController == [self.viewControllers objectAtIndex: 0]) { NSString * bob = @ "Твой дядя"; }

Спасибо за ваше руководство.

0 голосов
/ 09 марта 2010

Вы должны сохранить список ViewControllers, а затем сравнить его с отображаемым.

Вы можете сравнить, просто сравнив ссылки

for(UIViewController *vc in viewControllerArray)
{
  if(vs == viewController)
  //do stuff
}

Помогает ли это или я что-то неправильно понял?

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