Сбой в симуляторе, когда я пытаюсь перейти к другому виду - PullRequest
0 голосов
/ 04 августа 2011

поэтому у меня есть приложение панели вкладок, в которое я поместил кнопку, чтобы перейти к другому представлению.

, поэтому в FirstView.hi есть

IBOutlet ContactMainViewController *contactMainViewController;

и

-(IBAction)gotoContactMainViewController;

в моем FirstView.mi есть

-(IBAction)gotoContactMainViewController {

    [self presentModalViewController:contactMainViewController animated:YES];
}

и в моем SecondView, который я создал в .h

-(IBAction)goBack;

и в .m

-(IBAction)goBack {

    [self dismissModalViewControllerAnimated:YES];
}

Приложение работает правильно, но когда я нажимаю на кнопку, появляется зеленая линия

[self presentModalViewController:contactMainViewController animated:YES];

и говорят "Thread 1: Program received signal: "SIGABRT" и это в консоли: terminate called throwing an exception[Switching to process 3908 thread 0xb303]

Спасибо за вашу помощь!

Ответы [ 3 ]

1 голос
/ 04 августа 2011

Вы должны добавить код, предоставленный Леголасом непосредственно перед:

[self presentModalViewController:contactMainViewController animated:YES];
1 голос
/ 04 августа 2011

Что за файл классов FirstView и ContactMainViewController? это UIViewController или простой UIView? мы предполагаем, что ContactMainViewController - это отдельный файл класса

в вашем первом видении.m

#import "ContactMainViewController.h"

-(IBAction)gotoContactMainViewController {

    ContactMainViewController _contactMainVC = [[ContactMainViewController alloc]init];

    [self presentModalViewController:_contactMainVC animated:YES];
    [_contactMainVC release];
}

Добавьте @class ContactMainViewController; в заголовке перед @interface. Это должно сделать это. Также обязательно #import "ContactMainViewController.h" в вашем файле .m, чтобы избежать предупреждений

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

Вам нужно выделить contactMainViewController, прежде чем нажимать на представления.

...