2
respostas

Criando a função dentro de ViewDidLoad()

Olá, estou tentando seguir o passo a passo com a versão mais recente até o momento e está diferente a estrutura de código. Como eu chamo a função adicionar()? Ele cria função fora, como chamo a função quando a view já carregou?

import UIKit
class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        adicionar( ) //erro aqui
    }

    @IBAction func adicionar(_ sender: Any) {
        print("alimento: --")
    }

}
2 respostas

Oie Gisele, tudo bem?

É que nesse caso, sua função está marcada como @IBAction, significando que só será chamada caso houver uma ação, como por exemplo o toque de um botão. Por isso não podemos chamá-la dentro da viewDidLoad, ela já é chamada automaticamente quando ocorre a ação que você determinou.

Para chamar uma função direto no viewDidLoad (ou em qualquer outro lugar do código), você declara ela sem o @IBAction, dessa maneira:

func adicionar() {
     print("alimento: --")
}

Abraços!

Obrigada, então com o IBAction tem que ser chamada fora do viewLoad e funciona, sem precisar sem ser chamada dentro, ela é independente?