Позвоните 2-й XIB и Класс - PullRequest
1 голос
/ 10 мая 2011

Я учу себя Obj-C медленно, у меня есть проект с 2 классами, и у каждого класса есть XIB, который идет вместе с ним.

Для удобства тестирования они называются Один и Два

Я изменил список, чтобы приложение запускалось на двух, а не на одном, и это работает.

Так что я уверен (я надеюсь), что и классы, и XIB в порядке.

Итак, из One я хочу назвать (просмотреть open или как его там называют в ObjC) класс Two и XIB, который идет с ним. И тогда я хочу иметь возможность вернуться к Первому. Должно быть просто, а? Я испортил это в течение 2 дней и до сих пор не получил это работает.

У кого-нибудь есть пример кода, который показывает, как это сделать? Я нашел несколько документов по этому вопросу, но я думаю, что я медленно, потому что я не могу понять это.

спасибо за любую помощь!


Подробнее: РЕДАКТИРОВАТЬ: БМ 2-й XIB

    bm *screen = [[[bm alloc] initWithNibName:@"bm" bundle:nil] autorelease];

Я добавил вышеуказанный код и затем получил эту ошибку в этой строке

2011-05-09 14: 48: 23.242 HW [7265: 207] * - [bm initWithNibName: bundle:]: нераспознанный селектор, отправленный экземпляру 0x392e820 2011-05-09 14: 48: 23.244 HW [7265: 207] Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '** - [bm initWithNibName: bundle:]: не распознано селектор отправлен на экземпляр 0x392e820 '

1 Ответ

1 голос
/ 10 мая 2011

Есть два способа сделать это, и все зависит от того, как вы хотите, чтобы это выглядело.

Представить второй вид в качестве контроллера модального вида:

ViewControllerName *viewController = [[[ViewControllerName alloc] initWithNibName:@"ViewControllerName" bundle:nil] autorelease];
[self presentModalViewController:viewController animated:YES];

Или вы можете поменять вид из UIWindow:

UIWindow *window = [[[UIApplication sharedApplication] delegate] window];
ViewControllerName *viewController = [[[ViewControllerName alloc] initWithNibName:@"ViewControllerName" bundle:nil] autorelease];
window.rootViewController = viewController;
...