微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

需要一些帮助快速制作撤消按钮

如何解决需要一些帮助快速制作撤消按钮

我对 swift 和 ios 开发还很陌生,所以我有点困在这个问题上。我制作了这个应用程序,它可以在按下按钮时更改图像视图方块的背景颜色。颜色是从 rgb 光谱中随机选择的。现在我需要一个撤消按钮,将背景颜色设置为以前的颜色。我真的很感激这方面的帮助。这是我目前得到的。

var prevIoUsColor: UIColor?
    
    @IBAction func didPressRandomButton(_ sender: Any) {
        
        let randomred = CGFloat.random(in: 0...1)
        let randomGreen = CGFloat.random(in: 0...1)
        let randomBlue = CGFloat.random(in: 0...1)
        
        let color = UIColor(red: randomred,green: randomGreen,blue: randomBlue,alpha: 1)
      
        prevIoUsColor = color
        imagedisplay.backgroundColor = color
    }
    @IBAction func didPressUndobutton(_ sender: Any) {
        if prevIoUsColor != nil{
            imagedisplay.backgroundColor = prevIoUsColor!
        }
        
    }
}

解决方法

由于您的问题不清楚,我猜您需要在按下 RANDOM 按钮时更改颜色,并在按下 UNDO 按钮时撤消更改。

这里的问题似乎是您在按下 RANDOM 按钮时覆盖了之前的颜色。尝试这样做

   var previousColor: UIColor?
        
   @IBAction func didPressRandomButton(_ sender: Any) {

            previousColor = imageDisplay.backgroundColor

            let randomRed = CGFloat.random(in: 0...1)
            let randomGreen = CGFloat.random(in: 0...1)
            let randomBlue = CGFloat.random(in: 0...1)
            
            let color = UIColor(red: randomRed,green: randomGreen,blue: randomBlue,alpha: 1)
          
            imageDisplay.backgroundColor = color
   }

   @IBAction func didPressUndoButton(_ sender: Any) {
            if previousColor != nil{
                imageDisplay.backgroundColor = previousColor!
            }
            
   }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。