【问题标题】:How to insert image over uiview如何在uiview上插入图像
【发布时间】:2019-09-18 16:11:09
【问题描述】:

下面的代码在 UIView 上打印一行。我只想知道我将编写的能够在视图顶部插入图像的代码。很多人会point to this question,但它不起作用。我已经试过好几次了。我在下面尝试的代码没有效果。

class ViewController: UIViewController {
    var canVasView = UIView()

    override func viewDidLoad() {
        super.viewDidLoad()

        let myLayer = CALayer()
        let myImage = UIImage(named: "star")?.cgImage
        myLayer.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
        myLayer.contents = myImage
        canVasView.layer.addSublayer(myLayer)
    }
}

【问题讨论】:

  • 不要添加为图层,而是尝试添加为子视图。
  • 在哪里添加canVasView 作为视图控制器视图的子视图?为什么不使用UIImageView 而不是处理图层?
  • 你能给我们看一张其中一个例子的照片吗?

标签: ios swift uiview layer subview


【解决方案1】:

您需要将canVasView 作为子视图添加到UIViewController 视图并将图像添加到资产中。 See Image

class ViewController: UIViewController {

    var canVasView = UIView()

    override func viewDidLoad() {
        super.viewDidLoad()

        let myLayer = CALayer()
        let myImage = UIImage(named: "graph")?.cgImage
        myLayer.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
        myLayer.contents = myImage
        canVasView.layer.addSublayer(myLayer)

        self.view.addSubview(canVasView)
    }
}

【讨论】:

  • 这不起作用。我已通过 Dropbox 链接 dropbox.com/s/ksnshbj40vn78qf/draw.zip?dl=0 附加了我的代码。可以看看吗?
  • 抱歉耽搁了。在资产中添加图像而不是直接添加。查看更新的答案。
【解决方案2】:

首先你从你的图像文件创建一个UIImage,然后从它创建一个UIImageView

class ViewController: UIViewController {
  //  var canVasView = UIView()

    override func viewDidLoad() {
        super.viewDidLoad()

    let imageName = "star.png"
    let image = UIImage(named: imageName)
    let imageView = UIImageView(image: image!)

   // Finally you'll need to give `imageView` a frame and add it your view for it to be visible:

    imageView.frame = CGRect(x: 0, y: 0, width: 60, height: 60)
   // canVasView.addSubView(imageView)
    self.view.bringSubviewToFront(imageView)

  }

}

【讨论】:

  • 这不起作用。我已通过保管箱链接 dropbox.com/s/ksnshbj40vn78qf/draw.zip?dl=0 附加了我的代码。可以看看吗?
猜你喜欢
  • 1970-01-01
  • 2021-06-06
  • 2010-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多