Что это за метод перехода раскадровки? push, модальный или popover?

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

Я хочу реализовать то же самое: всплывающее окно контроллера в центре экрана. Но я не могу найти правильный способ презентации? Не могли бы вы сказать мне, что это за метод перехода? и как этого добиться?


person Kevin Science    schedule 29.06.2016    source источник
comment
Это модальное окно с использованием стиля презентации FormSheet.   -  person dan    schedule 29.06.2016


Ответы (3)


Это переход Present Modally, представленный как Form Sheet. См. вложение ниже введите здесь описание изображения

person Proton    schedule 29.06.2016
comment
Спасибо! Ваш способ самый простой. - person Kevin Science; 01.07.2016

Чтобы всплывающее меню отображалось после выполнения действия, у вас есть несколько вариантов сделать это. Я думаю, что самый простой способ — зайти на Cocopods.org и найти фреймворк, который сделает это за вас, используя несколько строк кода. Зайдите на Cocopods.org и введите «Menu» или «Pop» в строку поиска, и он найдет лучшие фреймворки для этого. Надеюсь, поможет.

person Jorge A Gomez    schedule 29.06.2016

Один быстрый и простой способ сделать это — разместить всплывающее представление в отдельном файле .xib, а затем загрузить его в контроллер представления, где вы хотите, чтобы отображалось всплывающее представление.

Вот что вам нужно сделать.

1) Создайте макет всплывающего окна, щелкнув правой кнопкой мыши проект->добавить новый файл->Пользовательский интерфейс->Просмотр. Не забудьте включить в макет черный фон с непрозрачностью 50%.

2) Просто загрузите его в контроллер представления, где вы хотите, чтобы он отображался. Я предполагаю, что вы хотите, чтобы он отображался по нажатию кнопки, поэтому вы можете сделать это следующим образом:

UIView *popupView;

 - (IBAction)showPopupView
{
    popupView = [[[NSBundle mainBundle] loadNibNamed:@"PopupView" owner:self options:nil] objectAtIndex:0];
    [self.view addSubview:popupView];
}

- (IBAction)hidePopupView
{
    [popupView removeFromSuperView];
}
person JLT    schedule 29.06.2016