Я написал простое приложение на основе UINavigationController с двумя ViewControllers;
В первом виде контроллера у меня есть этот код
-(IBAction)loadSecondView
{
SecondView *secondView = [[SecondView alloc]init];
[secondView setTotal:self.total];
[self.navigationController pushViewController:secondView animated:YES];
[secondView release];
[self.navigationController popViewControllerAnimated:YES];
}
Во втором представлении у меня есть метка, которая создается программно.
.....
[self.playerNameField addTarget:self
action:@selector(textFieldFinished:)
.....
- (IBAction)textFieldFinished:(id)sender
{
[sender resignFirstResponder];
}
Проблема в том, что я получаю сбой приложения при нажатии кнопки «Готово» на клавиатуре.
[SecondView performSelector:withObject:]: message sent to deallocated instance 0x522af60
Я понимаю, в чем проблема, но не могу понять, почему это происходит.
Поправь меня, если я ошибаюсь.
SecondView *secondView = [[SecondView alloc]init]; // retain 1
[self.navigationController pushViewController:playersNames animated:YES]; //secondView have retain of 2
[secondView release]; // now secondView should have retain of 1