ios - 单击按钮时无法播放一系列图像

标签 ios swift iphone

我正在尝试通过单击下一步按钮来播放动画图像的分离图像。图像名称作为字符串存储在数组中。当我点击下一步按钮时,图像转换是第一次发生。下一次,它不会发生。当我尝试打印 i 的值以检查单击下一个按钮时发生的情况时,该值没有增加。下面是我的代码:

    import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var image2: UIImageView!
    // @IBOutlet weak var imageView1: UIImageView!

  //        img1.image=UIImage(named:"frame2.gif")

    @IBAction func next(_ sender: Any) {
        var imgarray=["frame2.gif","frame3.gif","frame4.gif","frame5.gif","frame6.gif"]
        var i=0
        if i<7{
            image2.image=UIImage(named:imgarray[i])
            i+=1
        }
        else if i>=7{
            i=0
        }
               print(i)
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }


}

最佳答案

var i=0 放在按钮操作之外。否则,当您点击按钮时,您的 i 将始终重新初始化为 0

import UIKit

class ViewController: UIViewController {

var i=0
    @IBOutlet weak var image2: UIImageView!
    // @IBOutlet weak var imageView1: UIImageView!

  //        img1.image=UIImage(named:"frame2.gif")

    @IBAction func next(_ sender: Any) {
        var imgarray=["frame2.gif","frame3.gif","frame4.gif","frame5.gif","frame6.gif"]

        if i<7{
            image2.image=UIImage(named:imgarray[i])
            i+=1
        }
        else if i>=7{
            i=0
        }
               print(i)
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }


}

关于ios - 单击按钮时无法播放一系列图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54960744/

相关文章:

ios - 如何检索所有 NSNotificationCenter 观察者?

ios - 在没有方案的情况下验证 URL

iphone - 使用 App Delegate 处理多个 UINavigationController 并确保 UINavigationController 正确解除分配

iphone - 没有已知的选择器'JSONValue'实例方法

ios - UITableView 的 iCarousel 性能问题(iPad 主从 UI)

ios - 当应用程序处于后台甚至被用户终止时,在 iOS 上无需移动即可获取用户位置

swift - PHP 与 swift 中的 Ascii 值不同

php - 如何用 PHP 解密 iPhone 加密的 AES256 文本

iphone - 像 0xD2691E 这样的十六进制值的数据类型是什么?

ios - Sprite 套件中的 SKShapeNode 碰撞检测未检测到碰撞