본문 바로가기
Dev/UIKit

[UIKit/Storyboard] 아울렛 함수 (@IBOutlet)과 액션 함수 (@IBAction)

by Callie_ 2023. 7. 29.

 

Xcode에서 iOS 앱을 만들다 보면 IB, @IBOutlet, @IBAction 같은 용어를 자주 만난다. 이 용어들은 대체 무엇을 의미하며, 어떻게 활용하는 걸까? 간단하게 살펴보자.

 


 

 

IB = Interface Builder

IB는 Interface Builder의 줄임말이다. 이는 앱의 화면을 시각적으로 디자인하는 도구, 즉 **스토리보드(Storyboard)**를 의미한다. 스토리보드에서 레이블이나 버튼 같은 UI 요소를 화면에 배치하고, 그 요소들과 코드 사이의 연결을 만드는 모든 작업이 바로 'Interface Builder' 안에서 일어난다고 생각하면 쉽다.

 

 

 

 


 

 

@IBOutlet

  • @IBOutlet은 속성 연결!
  • @IBOutlet은 스토리보드에 있는 UI 객체(예: 레이블, 버튼, 이미지 뷰)의 속성을 코드에서 제어하고 싶을 때 사용한다. 쉽게 말해, 스토리보드의 특정 UI 요소를 코드의 변수와 연결해주는 역할을 한다.
  • 스토리보드에 있는 텍스트의 색깔을 바꾸거나, 버튼의 제목을 변경하고 싶다면 @IBOutlet으로 해당 요소를 코드와 연결한 다음, 코드에서 연결된 변수를 통해 속성을 변경할 수 있다.

 

 

 


 

 

@IBAction

  • @IBAction은 동작(이벤트) 연결!
  • @IBAction은 사용자가 UI 요소와 상호작용할 때 특정 동작(이벤트)을 실행시키고 싶을 때 사용한다.
  • 사용자가 버튼을 눌렀을 때, 스위치를 켰을 때처럼 뷰에 이벤트가 발생했을 때 정해진 작업을 실행시키는 함수를 연결하는 키워드이다.
  • 버튼을 누르면 특정 메시지가 나타나게 하거나, 화면이 전환되게 하는 등의 작업을 @IBAction 함수 안에 구현할 수 있다.

 

 

 


 

@IBOutlet과 @IBAction의 연결 방법

 

이 두 가지를 스토리보드와 연결하는 방법은 기본적으로 동일하다. 더 자세한 연결 과정은 이전에 발행했던 다음 글을 참고하면 도움이 될 것이다.

2023.07.29 - [Swift/Xcode] - 씬(Scene)과 Class 연결

 

[UIKit/Storyboard] 씬(Scene)과 Class 연결

1. iOS 앱 개발의 기본 도구: 코코아 터치 프레임워크와 UIKit코코아 터치 프레임워크 (Cocoa Touch Framework) iOS 앱을 만들 때 필요한 기본 개발 환경을 말한다. 애플 기기에 최적화되어 있고, 앱 개발에

calliek.tistory.com

 

 

 


 

 

'Dev > UIKit' 카테고리의 다른 글

[UIKit] 앱의 생명주기  (0) 2023.11.27
[UIKit] Font 설정하기  (0) 2023.11.02
[UIKit/Storyboard] 키보드 내리기  (0) 2023.07.30
[UIKit/Storyboard] 씬(Scene)과 Class 연결  (0) 2023.07.29
[UIKit/Storyboard] Entry Point  (0) 2023.07.23