swift - 按下触摸隐藏/显示 UIImage,并将数字从 10 倒数到 0
问题描述
- 在每次按下触摸时,我都希望 UILabel 从 10 到 0 一个一个地倒数。
- 此外,按下时我想显示 UIImageView:“MyRocketWith”,而当释放按下的触摸时,我想显示 UIImageView:“MyRocket”。
class ViewController: UIViewController {
@IBOutlet weak var MyRocket: UIImageView!
@IBOutlet weak var MyRocketWith: UIImageView!
@IBOutlet weak var Countdown: UILabel!
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
let touch: UITouch? = touches.first
if touch?.view != self.MyRocket {
self.MyRocketWith.isHidden = true
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}
解决方案
下面的代码显示并隐藏了UIImageView
点击UILabel
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var MyRocketWith: UIImageView!
@IBOutlet weak var CountDownLabel: UILabel!
@IBOutlet weak var MyRocket: UIImageView!
var count = 10
override func viewDidLoad() {
super.viewDidLoad()
let tap = UITapGestureRecognizer(target: self, action: #selector(ViewController.tapFunction))
CountDownLabel.isUserInteractionEnabled = true
CountDownLabel.addGestureRecognizer(tap)
MyRocket.isHidden = false
MyRocketWith.isHidden = true
MyRocketWith.tag=0
}
@IBAction func tapFunction(sender: UITapGestureRecognizer) {
print("tap working")
count = count-1
CountDownLabel.text = String(count)
if MyRocketWith.tag == 0
{
MyRocket.isHidden = true
MyRocketWith.isHidden = false
MyRocketWith.tag=1
}
else
{
MyRocket.isHidden = false
MyRocketWith.isHidden = true
MyRocketWith.tag=0
}
}
}
推荐阅读
- sql - 如何将 XML 转换为 SQL 表变量
- python - Django 通道套接字未连接到消费者
- bash - 回显包含美元的字符串变量的内容
- r - 绘制柱形图时如何避免重复分类变量?
- c# - 使用 WarpAffine() 将 Emgu.CV.Image 向右移动
- python - Pyomo:创建抽象模型和 AMPL 数据
- python - 两个数据之间的差异计算
- sql-server - SQL:我想解决,如何返回每个成员的最后一个操作
- mapbox - Mapbox iOS - 使用 centerOffset 时,不可见的注释显示在左上角
- spring-boot - 有没有办法在 Junit4(5) 中强制执行测试类的顺序