OBJC 프로젝트에서 Swift코드 사용하기 - ehrldyd15/Xcode_Tutorial GitHub Wiki
OBJC 프로젝트에서 Swift코드 사용하기
1. Project -> Build Settings -> Defines Module(Search) -> Yes로 변경
2. Project -> Build Settings -> Product Module Name(Search) -> 프로젝트명 기본 세팅이 되어있다.
Product Module Name 항목은 기본적으로 프로젝트 이름 뒤에 특수 아이디가 붙는 형태로 기본적으로 설정되어 있는데
이러면 제대로 못 찾기 때문에 그냥 프로젝트 이름을 또박또박 적어주자
3. Swift 파일을 생성해 준다.
Bridge Header를 추가하는 알림이 뜨면 추가하도록 하자
4. 생성된 Swift 파일에 함수를 작성한다.
NSObject는 Objective-C의 최상위 클래스이기 때문에 상속을 받아둔다.
@objc의 역활은 Objective-C 측에서 Swift 코드의 심볼을 파악 할 수 있게 해 주는 용도이다.
스위프트의 심볼은 영문자 외에도 유니코드 대부분의 문자를 쓸 수 있다.
하지만 이런 유니코드는 Objective-C 측에서 인식하지 못 하는 심볼이다.
그래서 @objc 커맨드를 통해 Objective-C 쪽에서 이해가 가능한 이름을 붙여줄 수 있다.
5. OBJC 파일에서 Swift 함수를 호출해보자.
우선 #import "OBJC_Project-Swift.h"를 해주는데
이미 생성된 Swift 파일의 클래스 이름을 import하는게 아니라 OBJC 프로젝트의 이름 자체를 import한다.
그리고 Swift의 함수를 호출해보면 로그가 찍히는 것을 확인할 수 있다.