Могу ли я не «pushModalViewController»? - PullRequest
0 голосов
/ 10 февраля 2012

У меня есть класс UIViewController и второй, который я хочу нажать модально предпочтительно.Однако я не могу назвать [self pushModalViewController:...], как получилось?

Каким требованиям я должен соответствовать, чтобы иметь возможность это сделать?

Я делаю это и получаю черное изображениеpush:

vc = [[ViewController alloc] init];
    [vc setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
    [self presentModalViewController:vc animated:YES];

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

Любая помощь, высоко ценится, спасибо.

Ответы [ 3 ]

2 голосов
/ 10 февраля 2012

'push' и 'modal' не принадлежат друг другу в одной и той же мысли. Вы можете:

  • представляет модальный контроллер вида, предпочтительно с использованием -presentViewController:animated:completion:, который является современной заменой -presentModalViewController:animated:

  • поместите контроллер представления в стек навигации, предполагая, что вы используете UINavigationController. Чтобы сделать это из контроллера представления, используйте:

    [self.navigationController pushViewController: foo animated: YES];

0 голосов
/ 10 февраля 2012

Как вы запускаете этот viewcontroller.Исходя из опубликованного кода, я предполагаю, что он инициализируется пустым представлением.Может быть, вы можете инициализировать его с нибера или чего-то еще?

vc = [[ViewController alloc] initWithNibName:@"NibName" bundle:nil];
[vc setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[self presentModalViewController:vc animated:YES];

Еще одна вещь, на которую стоит обратить внимание: если это пользовательский класс и нет файла nib, есть ли код в initWithCoder?Как выглядит viewDidLoad?

0 голосов
/ 10 февраля 2012

Вы действительно ищете [self presentModalViewController: myViewController.view animated: YES]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...