Tôi đang cố gắng chuyển đổi một số lớp Obj-C của mình sang Swift. Và một số lớp Obj-C khác vẫn sử dụng enum trong lớp được chuyển đổi đó. Tôi đã tìm kiếm trong Tài liệu phát hành trước và không thể tìm thấy nó hoặc có thể tôi đã bỏ lỡ nó. Có cách nào để sử dụng Swift enum trong Lớp Obj-C không? Hoặc một liên kết đến tài liệu của vấn đề này?
Đây là cách tôi khai báo enum của mình trong mã Obj-C cũ và mã Swift mới.
Mã Obj-C cũ của tôi:
typedef NS_ENUM(NSInteger, SomeEnum)
{
SomeEnumA,
SomeEnumB,
SomeEnumC
};
@interface SomeClass : NSObject
...
@end
Mã Swift mới của tôi:
enum SomeEnum: NSInteger
{
case A
case B
case C
};
class SomeClass: NSObject
{
...
}
Cập nhật: Từ các câu trả lời. Nó không thể được thực hiện trong Swift phiên bản cũ hơn 1.2. Nhưng theo Blog Swift chính thức này . Trong Swift 1.2 được phát hành cùng với XCode 6.3, Bạn có thể sử dụng Swift Enum trong Objective-C bằng cách thêm @objc
vào trướcenum