Как мне показать модальный экран в swift5? - PullRequest
1 голос
/ 20 сентября 2019

Я сейчас работаю над проектом iOS.

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

Я хочу модальный экран.Чего мне не хватает?

переместить ModalScreen

    func callAlert(_ text: String!) {
        let storyboard = UIStoryboard(name: "Main", bundle: nil)
        let myAlert = storyboard.instantiateViewController(withIdentifier: "ModalViewController") as! ModalViewController
        myAlert.modalPresentationStyle = .overCurrentContext
        myAlert.modalTransitionStyle = .crossDissolve
        myAlert.text = text
        self.present(myAlert, animated: false, completion: nil)
    }

modalScreenController

class ModalViewController : UIViewController {

    var text: String?


    @IBOutlet weak var modalCustomAlert: UITextView!
    @IBOutlet weak var okButton: UIButton!

    @IBAction func okPress(_ sender: Any) {
        self.dismiss(animated: true, completion: nil)
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        modalCustomAlert.layer.cornerRadius = 8
        self.modalCustomAlert.text = text
    }
...

modalStoryBoard

imagestoryboard

1 Ответ

1 голос
/ 20 сентября 2019

Вам необходимо установить цвет фона с альфа-компонентом в представлении вашего viewcontroller.

class ModalViewController : UIViewController {

    var text: String?


    @IBOutlet weak var modalCustomAlert: UITextView!
    @IBOutlet weak var okButton: UIButton!

    @IBAction func okPress(_ sender: Any) {
        self.dismiss(animated: true, completion: nil)
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        self.view.backgroundColor = UIColor.black.withAlphaComponent(0.5) //Your desired color and alpha component
        modalCustomAlert.layer.cornerRadius = 8
        self.modalCustomAlert.text = text
    }
...