Представление представления XIB зависает

В раскадровке у меня есть кнопка в главном меню, которая называется showCountdownViewControllerPressed.

Эта кнопка должна показывать мой XIB под названием TimerViewController.

Но когда я запускаю приложение, оно зависает при нажатии кнопки, а затем через некоторое время вылетает приложение.

Я поместил это действие в свой CRViewController.m (мое главное меню) [я также импортировал TimerViewController.h в этот файл]

- (IBAction)showCountdownViewControllerPressed:(id)sender {
    NSLog(@"showTimerViewController");
    TimerViewController *timeController = [[TimerViewController alloc]
                                  initWithNibName:@"TimerViewController" bundle:nil];
    [self presentViewController:timeController animated:YES completion:nil];

Кнопка обратного отсчета CRViewControllerXIB TimerViewController ПамятьTimerViewController Make-up Исключения точки останова


person Joshua Hart    schedule 14.11.2014    source источник
comment
какую ошибку вы получаете?   -  person iBhavin    schedule 14.11.2014
comment
что странно, у меня ошибок нет. Он просто говорит, что Xcode неожиданно завершил работу. Когда я запускаю его на своем тестовом устройстве, он просто зависает, а затем вылетает. Однако я получаю заявление NSLog.   -  person Joshua Hart    schedule 14.11.2014
comment
Каково содержание TimeViewController? Кажется, использование памяти слишком велико, в этой ситуации приложение может аварийно завершить работу.   -  person gabbler    schedule 14.11.2014
comment
@gabbler добавил изображение выше   -  person Joshua Hart    schedule 14.11.2014


Ответы (2)


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

введите здесь описание изображения

Опубликуйте, где точка останова исключения останавливается, чтобы получить дополнительную помощь :)

person diegomen    schedule 14.11.2014
comment
Вы пытались инициализировать TimeViewController с помощью [NSBundle mainBundle] вместо nil? - person diegomen; 14.11.2014
comment
Нет, как это будет выглядеть? - person Joshua Hart; 14.11.2014
comment
TimerViewController *timeController = [[TimerViewController alloc] initWithNibName:@TimerViewController bundle:[NSBundle mainBundle]]; - person diegomen; 14.11.2014
comment
Будет ли это иметь какое-либо значение, если представление, которое я представляю, предназначено только для режима просмотра в альбомной ориентации? - person Joshua Hart; 14.11.2014
comment
Возможно да, вы пробовали поставить вид в портрет? - person diegomen; 14.11.2014
comment
Ну вид не влезет в портрет. - person Joshua Hart; 14.11.2014
comment
Да, я так думаю, но это просто для того, чтобы узнать, в этом ли проблема :) - person diegomen; 14.11.2014
comment
Пробовал портрет, результат тот же. - person Joshua Hart; 14.11.2014

Что ж, если это только LandScape, вы можете добавить это в TimerViewController для iOS 8, что заставит TimerViewController повернуться в ландшафтный режим.

- (BOOL)shouldAutorotate
{
    return YES;
}

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
    return UIInterfaceOrientationLandscapeLeft;
}
person gabbler    schedule 14.11.2014