Как сделать прозрачный фон Popup ViewController? - PullRequest
0 голосов
/ 03 мая 2018

У меня есть всплывающее окно ViewController для выбора даты на UIDatePicker. Но когда открывается это всплывающее окно, фон покрывается новым цветом фона. Я пытался выбрать непрозрачность цвета, но это не работает. Я использую UILabel для обработки кликов и открытия нового ViewController.

override func viewDidLoad() {
        super.viewDidLoad()

        let tapDateSelectExpiration = UITapGestureRecognizer(target: self, action: #selector(handleSelectDateExpiration))
        let tapDateSelectValidity = UITapGestureRecognizer(target: self, action: #selector(handleSelectDateValidity))
        let tapDateSelectOrder = UITapGestureRecognizer(target: self, action: #selector(handleSelectDateOrder))

        lblDataPedido.isUserInteractionEnabled = true
        lblDataValidade.isUserInteractionEnabled = true
        lblDataExpiracao.isUserInteractionEnabled = true

        lblDataPedido.addGestureRecognizer(tapDateSelectOrder)
        lblDataValidade.addGestureRecognizer(tapDateSelectValidity)
        lblDataExpiracao.addGestureRecognizer(tapDateSelectExpiration)
    }

@objc func handleSelectDateExpiration(_ sender : UILabel) {
        print("handleSelectDateExpiration")
        var vcSelectDate = self.storyboard?.instantiateViewController(withIdentifier: "ViewControllerSelectDate") as! ViewControllerSelectDate
        vcSelectDate.typeDate = "DateExpiration"
        self.present(vcSelectDate,animated: true,completion: nil)
    }

// Other funcs as above.

MainLayout:

MainLayout

Макет DatePicker с непрозрачным фоном:

DatePicker layout with backgroud not transparent

Раскадровка:

enter image description here

1 Ответ

0 голосов
/ 03 мая 2018

Вы можете попробовать

let vc = self.storyboard?.instantiateViewController(withIdentifier: "dateView") as! dateViewController

vc.delegate = self

vc.providesPresentationContextTransitionStyle = true;

vc.definesPresentationContext = true;

vc.modalPresentationStyle = UIModalPresentationStyle.overCurrentContext

self.present(vc, animated: false, completion: nil)

и выберите прозрачный фон следующим образом

enter image description here

или в IB

enter image description here

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