簡體   English   中英

iOS Swift:彈出自定義視圖作為警報框

[英]Ios Swift : Popup Custom view as alert box

**我已經用文字和圖像設計了自己的視圖。

我想將其顯示為警報視圖或僅顯示為窗口

如何使用.modalPresentationStyle作為.Custom並實現此目的

我應該使用ViewController還是直接顯示視圖

@IBAction func BtnClickFnc(sender: AnyObject)
{
    let MsgBoxVar = MsgBoxCls()
    MsgBoxVar.modalPresentationStyle = .Custom
    MsgBoxVar.preferredContentSize   = CGSizeMake(200, 400)
    self.presentViewController(MsgBoxVar, animated: true, completion: nil)

}

class MsgBoxCls: UIViewController
{
    override func viewDidLoad()
    {
        view.addSubview(NamVyuCls(frame: CGRectMake(50,50,200,200)))
    }
}


class NamVyuCls: UIView
{
    override public init(frame: CGRect)
    {
        super.init(frame: frame)

        layer.borderWidth = 2
        layer.borderColor = UIColor.darkGrayColor().CGColor
        layer.cornerRadius = 10

        // Code Todo
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}
var BgdVyuVar: UIView!
var NamVyuVar: NamVyuCls!

@IBAction func BtnKlkFnc(sender: AnyObject)
{
    BgdVyuVar = UIView(frame: view.frame)
    BgdVyuVar.backgroundColor = UIColor(red: 255/255, green: 255/255, blue: 225/255, alpha: 0.5)
    BgdVyuVar.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(self.DsmVyuFnc)))
    self.view.addSubview(BgdVyuVar)

    NamVyuVar = NamVyuCls()
    NamVyuVar.frame = CGRectMake(self.view.frame.width / 2 - 100,self.view.frame.height / 2 - 100,200,200)
    self.view.addSubview(NamVyuVar)

    UIView.animateWithDuration(0.5, delay: 0.1, options: .TransitionNone,
        animations:
        {
            self.view.bringSubviewToFront(self.NamVyuVar)
        },
        completion: nil)
}

func DsmVyuFnc()
{
    BgdVyuVar.removeFromSuperview()
    NamVyuVar.removeFromSuperview()
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM