기초

IBOutlet과 IBAction의 차이

섭섭's 2024. 12. 1. 17:53

iOS 개발을 하면서 Xcode에서 Interface Builder를 사용해 UI 요소를 연결하다 보면, IBOutlet과 IBAction이라는 용어를 자주 접하게 됩니다.

 

이 두 용어는 스토리보드와 코드를 연결하는 역할을 합니다.

 

IBOutlet

IBOUtlet은 " Interface Builder Outlet "의 줄임말 입니다.

 

스토리 보드나 XIB 파일에 있는 UI요소를 접근하고 제어하게 해 줄수 있는 역할을 합니다.

 

예시)UIButton, UILabel

 

IBAction

IBAction 은 " Interface Builder Action" 의 줄임말 입니다.

 

주로 버튼을 누르거나 슬라이더를 조작할 때 발생하는 이벤트를 처리하기 위해 사용됩니다.

 

  IBAction IBOutlet
역할 UI 요소의 이벤트에 반응하는 메서드 연결 UI 요소를 코드에서 사용 가능하게 함
형태 메서드 변수
사용 예시 버튼 클릭, 슬라이더 변경 이벤트  UIButton, UILabel
연결 방식 UI 이벤트와 메서드를 드래그 연결 코드와 UI 요소를 드래그 연결

 

IBOutlet,IBAction 연결방법

 

Main.storyboard 에서 UIButton 이나 UILabel 같은 UI 요소를 선택한 후

Control 키를 누른채로 UI 요소를 ViewController.swift 같은 파일로 드래그 하면

팝업이 나타나면 IBOutlet 으로 설정하고 이름을 입력한 뒤 connect 를 클릭하면 됩니다.

 

 IBAction 도 같습니다.

 

팝업이 뜨면 IBAction으로 설정하고 메서드 이름을 입력한 뒤 connect 를 입력하면 됩니다.

 

예시

 

 IBOutlet과 IBAction을 함께 사용해 버튼 클릭 시 라벨의 텍스트를 변경하는 아주 간단한 예시를 적어보겠습니다.

 

import UIKit

class ViewController: UIViewController {
    
    @IBOutlet weak var titleLabel: UILabel!
    
    @IBAction func changeTextButtonTapped(_ sender: UIButton) { 
        titleLabel.text = "Hello"
    }
}

 

실행을 하게되면 UILabel의 텍스트가 Hello 로 변경되게 됩니다.

 

'기초' 카테고리의 다른 글

스택구조  (0) 2024.11.15
git 사용법  (0) 2024.09.01
Homebrew 설치하기  (0) 2024.09.01
13.string Editing  (0) 2024.06.02
12. string  (0) 2024.06.02