Bezdepbonusu7Программирование: статьи и ответы

Вопрос

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

Автор вопроса: Joshua HartОтветов: 2

В раскадровке у меня есть кнопка в главном меню, которая называется 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 Память Исключения точки останова

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

xcodeiosobjective-cxibpresentviewcontroller

Ответы

Ответ 1 · diegomen

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

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

Ответ 2 · gabbler

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

- (BOOL)shouldAutorotate
{
    return YES;
}

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
    return UIInterfaceOrientationLandscapeLeft;
}

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы