ios - 快速创建 UIImageView 的副本

标签 ios swift uiimageview uipangesturerecognizer

我希望能够调用一个函数并让该函数创建一个 UIImageView 的副本。这是我构建要复制的图像的地方。

    var redBar = UIImageView()
    let redBarImage = UIImage(named: "Music Bar")
    redBar = UIImageView(image: redBarImage)
    self.addSubview(redBar)

当用户做一个平移手势时(这部分我已经完成),我想像这样调用一个名为“produceRedBar”的函数:

func produceRedBar(){
}

redBar 是一个全局变量。我如何生成 redBar 的副本,但每次调用该函数时都需要生成一个新副本。

最佳答案

与其复制 ImageView 等,不如试试这个,

func produceRedBar(value: Int){

    for i in 0...value{
        let newView = UIImageView(image: UIImage(named: "Music Bar"))
        var rectImage:CGRect = newView.frame
        rectImage.origin.x = 10
        rectImage.origin.y = CGFloat(10 + (i * 20) + 5) //10 - origin + i * 20 - for placing + 5 - padding
        self.view.addSubview(newView)
    }

}

并像这样使用音量值的计数调用您的 produceRedBar() 方法,

self.produceRedBar(5)
self.produceRedBar(4)
self.produceRedBar(6)

注意:相应地调整 x 和 y 值。

关于ios - 快速创建 UIImageView 的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34562315/

相关文章:

objective-c - 如何在 objective-c 中修复“无效的AllXsd值”?

objective-c - 是可变类 "heavier?"

swift - 如何在 Swift 中通过字符串比较来过滤对象

ios - 如何在 UIImageView 之上叠加一个部分透明的 UIImageView?

ios - Swift - 在 UIImageview 上设置可点击区域

ios - 如何在 iOS 中进行健壮的线程本地存储

ios - UITextField 不会更改 RTL iOS 中的语义

ios - 使用 CMTimeMapping 寻找 AVComposition 会导致 AVPlayerLayer 卡住

ios - 避免在 View 中再次获取图像

swift - 为什么我的图像没有全屏显示?