简体   繁体   English

如何快速全局声明UIView?

[英]how to declare UIView globally in swift?

Unable to create View globally. 无法全局创建视图。 My code is : 我的代码是:

 required init(coder aDecoder: NSCoder)
 {
    fatalError("init(coder:) has not been implemented")
 }   

 // CODING
 class ViewController: UIViewController { 

    //Unable to create View globally, kindly help me,, 
    //Error coming like this

    required init(coder aDecoder: NSCoder) 
    {
       fatalError("init(coder:) has not been implemented")
    }   

    var view11:UIView
    var img_view11:UIImageView
    .
    .
    .

    @IBAction func long(sender: UILongPressGestureRecognizer) 
    {
        var data1: NSData = UIImagePNGRepresentation(img.image)
        view11 = UIView(frame: CGRect(x: 25, y: 0, width: 300, height: 200))
        img_view11 = UIImageView(frame: CGRect(x: 0, y: 0, width: 300, height: 200))
        img_view11.image = UIImage(data: data1)
        view11.addSubview(img_view11)
        self.vw.addSubview(view11)
    }
 }

If we erase that "required" line, we get this error: 如果我们删除该“必需”行,则会出现此错误:

"fix-it Insert \\n required initializer. " "fix-it Insert \\n required initializer.

after that, if we run, then the thread error is thrown. 之后,如果我们运行,则会引发线程错误。

Outside the class do: 在课外做:

var imageView: UIImageView = UIImageView()

Then you will be able to use it globally 然后,您将可以在全球范围内使用它

You can get rid of the error by replacing the fatalError code with super.init(coder: aDecoder) . 您可以通过将fatalError代码替换为super.init(coder: aDecoder)来消除错误。

This initialization is required for objects that are initialized from a nib (or storyboard), I believe. 我相信,对于从笔尖(或情节提要)初始化的对象,此初始化是必需的。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM