Подождите, пока пользователь коснется экрана.стриж - PullRequest
0 голосов
/ 24 мая 2018

После того, как что-то происходит, я делаю вид с меткой,

let myView = UIView(frame: CGRect(x: 100, y: 100, width: 100, height: 100))
let label = UILabel(frame: CGRect(x:0,y:0,width: 100, height: 100))
myView.addSubview(lebel)
self.view.addSubview(myView)
myView.alpha = 0
UIView.animate(withDuration: 0.5, animations: {
        myView.alpha = 1
    })

Теперь я хочу, чтобы вы подождали, пока на экране не произойдет касание, а затем

UIView.animate(withDuration: 0.5, animations: {
            muView.alpha = 0
        }, completion: { (bool) in
            myView.removeFromSuperview()
    })

Как я могу ждать, пока я коснусь экрана?

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

В дополнение к ответу Абделахада, вы должны объявить let myView как property, чтобы использовать его в @IBAction func handleTapGesture(_ recognizer: UITapGestureRecognizer) {}.Итак, новый код выглядит следующим образом:

 @IBAction func handleTapGesture(_ recognizer: UITapGestureRecognizer) {

  UIView.animate(withDuration: 0.5, animations: {
        self.myView.alpha = 0
       }, completion: { (bool) in
        self.myView.removeFromSuperview()
   })
}

Наконец, добавив, я обнаружил вашу небольшую ошибку в вашем коде.muView неверно и myView правильно.

0 голосов
/ 24 мая 2018

Просто добавьте tapGesture к вашему виду

В viewDidload

 let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTapGesture(_:)))
    self.view.addGestureRecognizer(tapGesture)

handleTapGesture

 @IBAction func handleTapGesture(_ recognizer: UITapGestureRecognizer) {

      UIView.animate(withDuration: 0.5, animations: {
            muView.alpha = 0
           }, completion: { (bool) in
            myView.removeFromSuperview()
       })

    }
...