2010-05-08 3 views
0

Я пишу немного музыки для iphone. Я почти готов, это единственная проблема, из-за которой я не могу ее отключить. любая помощь для решения этой проблемы очень ценится.Вызов addubview снова вызывает замедление

это то, что я делаю: at my appDelegate Я добавляю в окно свой экран меню. экран меню-экран действует как контейнер и управляет представлением представления пользователю.

означает, что на экране меню есть четыре кнопки (новая игра, опции, faq, рекорды). , когда пользователь нажимает на кнопку что-то, как это происходит:

if (self.gameViewController == nil) 
{ 
    GameViewController *viewController = [[GameViewController alloc] initWithNibName:@"GameViewController" bundle:nil]; 
    self.gameViewController = viewController; 
    [viewController release]; 
} 
[self.view addSubview:self.gameViewController.view]; 
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleSwitchViewNotificationFromGameView:) name:@"SwitchView" object:gameViewController]; 

, когда пользователь возвращается в меню, этот кусок кода запускается на выполнение:

[[NSNotificationCenter defaultCenter] removeObserver:self]; 
[self.gameViewController viewWillDisappear:YES]; 
[self.gameViewController.view removeFromSuperview]; 

это прекрасно работает для всех экранов, но не для игрового экрана (ну это единственная с кучами пользовательского взаимодействия) означает, что отзывчивость iphone (при воспроизведении тембров) становится очень медленной. Производительность прекрасна, когда я впервые показываю игровое поле. он начинает становиться все медленнее, как только я снова добавляю его в меню-views-container-subviews (добавление) (в основном открывают новую игру) любые идеи, что вызывает (или обойти) это?

благодаря осыпает

С наилучшими пожеланиями Том

ответ

0

Хорошо, с верхней части моей головы, это не звучит как вопрос контроллера. Это звучит как проблема с чем-то другим, оставленным бегом или жевательной памятью. Я бы предложил использовать инструменты профилирования, чтобы увидеть, можете ли вы указать, где также исчезает процессор. У вас может быть утечка памяти для объектов, которые, к примеру, также занимаются большим количеством материалов.