Как вызвать расширение для UIButton в viewDidLoad - PullRequest
0 голосов
/ 14 мая 2019

Я все еще новичок в Swift и программировании в целом.В настоящее время я застрял на том, как сделать расширение для кнопки самозапуска (вызова) в viewDidLoad.мой код работает, когда я нажимаю на кнопку, но я хочу, чтобы это происходило само по себе, не нажимая viewDidLoad.

@IBOutlet weak var blinkButton: UIButton!



// Yellow Colour Error: All paths through this function will call itself

@IBAction func blinkButtonTapped(_ sender: UIButton) {
       blinkButtonTapped(blinkButton)
    }



// Yellow Colour Error: All paths through this function will call itself

extension UIButton {

    func blinkButton(_ sender: AnyObject?) {
        self.blinkButton( nil )
        let flash = CABasicAnimation(keyPath: "opacity")
        flash.duration = 0.5
        flash.fromValue = 1
        flash.toValue = 0.1
        flash.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut)
        flash.autoreverses = true
        flash.repeatCount = 100000000

        layer.add(flash, forKey: nil)


    }

Я хочу вызвать blinkButton функцию в ViewDidLoad.

1 Ответ

0 голосов
/ 14 мая 2019

Вам нужно передать значение как nil, потому что параметр имеет необязательный тип, или вы можете передать любой тип объекта.

override func viewDidLoad() {
   super.viewDidLoad()
       blinkButton(nil) 
}

А вам нужно удалить в self.blinkButton(nil) в func blinkButton, он вызывается два раза.

...