Проблема Xamarin "self.isModalInPresentation = false" не работает - PullRequest
1 голос
/ 13 марта 2020

Я пытался отключить эффект смахивания на поповерном контроллере. У моего приложения xamarin ios 13 возникли проблемы при перетаскивании контроллера поповер, поэтому мне нужно отключить эффект смахивания по умолчанию на контроллере поповер. В цели c и swift у него есть свойство isModelInPresentation, но в xamarin оно недоступно. Может ли какой-нибудь орган помочь отключить всплывающее окно?

Ответы [ 2 ]

1 голос
/ 18 марта 2020

Используйте ModalInPresentation = true; в ViewDidLoad представленной страницы.

Или

Используйте YourPresentingPage.ModalInPresentation = true; непосредственно перед кодом для представления страницы.

1 голос
/ 16 марта 2020

modalInPresentation : логическое значение, указывающее, применяет ли контроллер представления модальное поведение.

Значение по умолчанию этого свойства НЕТ . Когда вы устанавливаете его на YES , UIKit игнорирует события вне границ контроллера представления и предотвращает интерактивное отключение контроллера представления, пока он находится на экране.

В Xamarin. iOS , При установке ModalInPresentation = True, при перелистывании viewController не исчезнет. Остальное исчезнет.

public override void ViewDidLoad()
{
    View = new UniversalView();

    base.ViewDidLoad();
    this.Title = "Second";
    View.BackgroundColor = UIColor.Yellow;
    ModalInPresentation = true;
    // Perform any additional setup after loading the view
}

Эффект:

enter image description here

...