Как заблокировать нажатия вокруг дочернего контроллера вида с помощью Swift 4.0? - PullRequest
0 голосов
/ 15 января 2019

Я прикрепляю дочерний контроллер представления к моему представлению:

func showRaitingDialog () {

        let popupRateExpiriance = UIStoryboard (name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ratePopupId") as! RateViewController

        //adding the popup view to the corrent view controller
        print ("this happens after")
        self.addChildViewController(popupRateExpiriance)

        popupRateExpiriance.refrenceToController = self

        popupRateExpiriance.view.frame = self.view.frame
        self.view.addSubview(popupRateExpiriance.view)
        popupRateExpiriance.didMove(toParentViewController: self)

    }

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

мой вопроскак мне заблокировать нажатия вокруг этого диалога?(пока пользователь может нажать на экран, ударив его, если он нажимает вокруг самого контроллера вида)

1 Ответ

0 голосов
/ 15 января 2019

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

  @IBAction func buttonAction(_ sender: Any) {
        showRaitingDialog ()
    }

    func showRaitingDialog () {
        let popupRateExpiriance = UIStoryboard (name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ratePopupId") as! RateViewController

        //adding the popup view to the corrent view controller
        addChild(popupRateExpiriance)

//        popupRateExpiriance.refrenceToController = self // << maybe you should create an interface / delegate

        popupRateExpiriance.view.frame = self.view.frame
        view.addSubview(popupRateExpiriance.view)
        popupRateExpiriance.didMove(toParent: self)
    }

Контроллер справа имеет цвет фона, установленный для очистки.

enter image description here

Вот результат во время выполнения после нажатия кнопки для отображения дочернего контроллера (пользователь больше не может нажимать кнопку).

enter image description here

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