Swift 클래스에서 생성 된 ObjC 헤더 파일 (Project-Swift.h
)에 문제가 있습니다.Swift에서 생성 된 Objective-C 헤더
헤더 파일에는 정의 된 Swift 클래스의 표현과 필수 종속성의 모든 가져 오기가 포함되어 있습니다. 실제로 ObjC와 Swift를 하나의 프로젝트에서 결합했습니다. 내가 외부 프레임 워크에서 Swift 클래스 의 하위 클래스 XYZTableViewController
을 만들 때까지 모든 것이 잘 작동합니다. Project-Swift.h
에서
@objc class XYZTableViewController: ABCTableViewController { ... }
생성 콘텐츠 : 빠른 파일에서 클래스의
정의
:이 오류와SWIFT_CLASS("_TtC6Abc22XYZTableViewController") @interface XYZTableViewController : ABCTableViewController - (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER; - (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil OBJC_DESIGNATED_INITIALIZER; - (nonnull instancetype)initWithStyle:(UITableViewStyle)style OBJC_DESIGNATED_INITIALIZER; @end
컴파일 마무리
Project-Swift.h:140:37: Cannot find interface declaration for 'ABCTableViewController', superclass of 'XYZTableViewController'; did you mean 'UITableViewController'?
모듈을 .m 프레임으로 가져 와서 외부 프레임 워크를 만들고 관련 클래스 유형의 속성을 정의 할 때 작동합니다.
문제가 있거나 비슷한 다른 합병증이 있습니까?
당신이 스위프트 파일 XYZTableViewController에'ABCTableViewController'의 모듈을 가져 했습니까? – Cosyn
예'import ABCKit' 소스 파일의 맨 위에 오른쪽 모듈을 가져 왔습니다. – milanhorvatovic