вызов метода из другого класса, генерирующий ошибку SIGABRT в xcode - PullRequest
0 голосов
/ 28 августа 2011

Я вызываю метод, содержащийся в классе контроллера, который должен изменить представления.Выдает ошибку на inserttsubview.view.Как это решить?Спасибо

вызов из текущего класса меню ViewController:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{    
     aboutTabController * myObject = [[aboutTabController alloc] init];

    if (indexPath.section == 1) {

        switch (indexPath.row) {
            case 0:
                [myObject turnIdioma];
                break;
            case 1:
                //
                break;
            default:
            break;}
    }

}

//method implememented in controller class:

- (void) turnIdioma
{


     [UIView beginAnimations:@"View Flip" context:nil];
        [UIView setAnimationDuration:1.0];
        [UIView setAnimationCurve: UIViewAnimationCurveEaseInOut];
    if (self.controladorAjustes == nil)
    {
        settingsViewController *aController = [[settingsViewController alloc] initWithNibName:@"mailViewController" bundle:nil];
        self.controladorAjustes = aController;
        [aController release];
    }

    [UIView setAnimationTransition: UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];

    [self.controladorMenu viewWillDisappear:YES];
    [self.controladorAjustes viewWillAppear:YES];

    [self.controladorMenu.view removeFromSuperview];
    [self.view insertSubview:controladorAjustes.view    atIndex:0];

    [self.controladorMenu viewDidDisappear:YES];
    [self.controladorAjustes viewDidAppear:YES];

    [UIView commitAnimations];
}

1 Ответ

0 голосов
/ 28 августа 2011

Вы не можете вставить объект с нулевым значением как подпредставление.Обычно контроллер представления проверяет, создан ли он при попытке получить его свойство представления, используя соответствующий метод, в зависимости от того, является ли это представление, определенное файлом NIB, или нет.явно установите представление на ноль, тогда вы, вероятно, не принимаете правильный подход.Я подозреваю, что вы делаете что-то подозрительное внутри вашего звонка:

  [self.controladorAjustes viewWillAppear:YES];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...