Xcode8에서 스토리보드에서 Action을 연결할 수 없는 경우 처리 방법

2016-10-17
22 Views

Xcode8에서도 이전처럼 하듯이 control키를 누른 상태에서 UIButton등 Action을 연결하면 도구마음대로 xxxWithSender와 같은 이름과 연결이 되어 실제 실행을 하다보면 unrecognized selector라는 오류가 발생한다. 또한 onClickWithSender라는 메소드를 작성해서 연결하면 WithSenderSender라고 만들어진다.

이 문제는 Xcode8에서 Use Legacy Swift Language Version이 YES로 되어 있는 경우 발생하는 것으로 파악되었다. 보통 SWIFT_VERSION = 2.3으로 지정된 경우에 발생한다. 해결 방법은 스토리보드 화면에서 마우스 오른쪽 버튼을 눌러 나오는 이벤트 목록화면에서 필요한 이벤트를 선택하고 드래그하여 연결할 수 있다.

xcode8-10

버튼인 경우 [Touch Up Inside]를 선택하고 소스코드쪽으로 드래하면 Action명을 입력한다.

xcode8-11

물론 이것도 불안하다면 .addTarget을 하면 좋을 것으로 생각된다.

Facebook Comments

You may be interested

페이지 로딩 위치에 따른 사용자 시선 유도
Swift 3.0
shares3 views
Swift 3.0
shares3 views

페이지 로딩 위치에 따른 사용자 시선 유도

MJ Kim - 4월 29, 2017

로딩되는 표시를 표시할 위치를 조금 고민해보면서 사용자경험(UX)를 개선하기 위함을 고려해서 정리해 본다. 로딩을 생각해보면 대부분 한가운데에 표시하면 된다고 생각하지만, Twitter…

iOS와 Android UX의 차이점
Swift 3.0
shares2 views
Swift 3.0
shares2 views

iOS와 Android UX의 차이점

MJ Kim - 4월 29, 2017

최근 필자가 iOS와 Android를 같이 개발하다보니 UX의 차이점을 기억하고자 정리해본다.  이를 정리하는 이유는 운영체제별로 차이점을 이해하고 그 차이점을 극복하기 위함이다.…

모바일 앱 아키텍처
Swift
shares26 views
Swift
shares26 views

모바일 앱 아키텍처

MJ Kim - 4월 22, 2017

이 내용은 나름대로 개발해본 내용을 토대로 정리해본 모바일 앱 아키텍처에 대한 내용이다. 이를 정리한 이유는 오래된 아키텍처부터 최근 아키텍처까지 정리해보고…