Tôi có một typedef như vậy:Sử dụng obj-c typedef trong Swift
typedef NSString VMVideoCategoryType;
extern VMVideoCategoryType *const VMVideoCategoryType_MusicVideo;
extern VMVideoCategoryType *const VMVideoCategoryType_Audio;
extern VMVideoCategoryType *const VMVideoCategoryType_Performance;
extern VMVideoCategoryType *const VMVideoCategoryType_Lyric;
extern VMVideoCategoryType *const VMVideoCategoryType_Show;
Tôi đã bao gồm tập tin này trong phần đầu cầu nối. Tuy nhiên, khi tôi cố gắng truy cập VMVideoCategoryType
trong một file Swift tôi nhận được một lỗi:
Use of undeclared type 'VMVideoCategoryType'
Có cách nào để làm cho công việc này hay tôi phải hoàn toàn tái xác định loại hình này ở Swift?
này hoạt động cho được thoát khỏi lỗi Swift nhưng sau đó khai báo kiểu trước đây của tôi trong obj-C sử dụng kiểu đó ném lỗi: 'Chuyển đổi ngầm định của con trỏ gián tiếp sang con trỏ Mục tiêu-C thành 'NSString *' không được phép với ARC2 – Ramsel
@Ramsel: Bạn phải thay thế 'VMVideoCategoryType *' bằng 'VMVideoCategoryType' sau thay đổi đó (như tôi đã làm trong các định nghĩa bên ngoài). –
@Ramsel: Nếu điều đó không có tác dụng, vui lòng thêm mã Objective-C gây ra sự cố cho câu hỏi của bạn. –