Swift/UIkit

[UIkit] IBOutlet / IBAction

여성일 2023. 3. 20. 12:12
728x90
IBOutlet

IBOutlet은 스토리보드 상에 선언한 View 객체를 IB(Interface Builder)가 알아볼 수 있게 만드는 것.

스토리보드에서 생성하고자 하는 객체를 클릭 후 control을 누른 상태로 코드를 작성하는 곳에 끌어 넣으면 됨.

 

IBAction

IBActiond은 스토리보드 상에 선언한 View 객체가 특정 이벤트가 발생했을 때 호출되는 함수.

 

IBoutlet과 다르게 preview 창에서 생성하고자 하는 객체를 클릭 후 control을 누른 상태로 코드를 작성하는 곳에 끌어 넣으면 됨.

 

간단한 예제
import UIKit

class ViewController: UIViewController {

    let emojiArr = ["🐶", "🙀"]
    @IBOutlet weak var tapButton: UIButton!
    @IBOutlet weak var stateEmoji: UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }

    func chageEmoji() {
        let emojis = emojiArr.randomElement()
        stateEmoji.text = emojis
    }
    @IBAction func buttonAction(_ sender: Any) {
        print("눌렸다!")
        chageEmoji()
    }
}

"눌러봐" 버튼을 누르면 이모지가 바뀌는 간단한 예제이다. IBO를 통해 view객체를 IB가 알아볼 수 있게 만들어주고 IBA를 이용해서 이벤트를 발생 시킨다.

 

 

버튼이 이벤트를 성공적으로 작동시켰을 때 콘솔에서 확인할 수 있다.