[ios-Swift]2. storyboard 기초

감자맨·2022년 8월 4일
0

ios

목록 보기
4/6
post-thumbnail

아웃렛 변수와 액션 함수

스토리보드에 추가한 객체를 선택하고 내용을 변경하거나 특정 동작을 수행하도록 하기 위해서는 해당 객체에 접근할 수 있는 변수인 '아웃렛 변수'와 동작을 정의한 함수인 '액션 함수'가 필요하다!

💡전편에서 만들은 텍스트필드에 이름을 입력하면 입력한 텍스트를 받아 저장할 변수를 만들고 만든 변수와 텍스트필드를 연결시켜줘야 한다. 이러한 변수를 아웃렛 변수라고 한다.
그리고 (Send)버튼을 클릭했을 때 입력한 이름을 읽어서 레이블에 출력하는 함수를 만들고 이 함수를 버튼과 연결시켜 줘야 하는데 이러한 함수를 액션 함수라고 한다!

아웃렛변수와 액션함수를 추가해보겠습니다. ctril + option + ⌘command + enter 단축키를 눌러주면 보조편집기가 열립니다.

아웃렛 변수 추가

먼저 "HELLO"레이블에 아웃렛 변수를 추가해 보겠습니다.
"HELLO"레이블을 선택후 control을 누르면서 보조편집기쪽으로 드래그를 하면 연결선이 나타납니다. 그러면 뷰컨트롤러 클래스 선언문 바로 아래에 놓아주면 설정창이 뜹니다.

설정창에 Name은 원하는 텍스트를 입력해주면 됩니다. 저는 알아보기 쉽게 lbHello로를 입력해주었습니다. 주의할점은 Type이 UILabel인지 체크하고 Storage를 Strong으로 체크해줍니다.

레이블에 대한 아웃렛 변수가 추가되었습니다!

텍스트필드도 위와 같이 끌어다 바로 다음줄에 추가해주면 됩니다.

버튼 액션 함수 추가

마지막으로 버튼에 대한 액션 함수를 추가해 보겠습니다.
위와같은 방식으로 끌어다 보조편집기 안에다 놔주면 되는데 이때 클래스의 맨 마지막 부분에 추가해줍니다.

Type에 꼭 UIButton 체크 잊지 않기!

액션함수가 잘 추가 되었습니다.

이제 버튼 클릭시 동작을 구현해보겠습니다.
ViewController로 넘어가 버튼 클릭 시 동작할 함수를 코딩해줍니다.
(Send)버튼을 클릭했을때 동착할 btnSend 액션 함수를 다음과 같이 코딩합니다.

여기서 "Hello"라는 문자열과 텍스트필드에 입력되는 값인 txtName.text의 문자열을 결합하여 lbHELLO.text에 넣는다는 의미입니다!

시뮬레이터로 실행을 해서 확인해보면,

이렇게 Name에 입력한 값이 위의 HELLO라벨에 잘 추가되는걸 볼 수 있다!

profile
나는 코딩하는 감자다!

0개의 댓글