不符合协议 Swift 父级 Class - Objective C 协议
does not conform to protocol Swift Parent Class - Objective C Protocol
我试图在 Swift 中调用我的协议 Class,但它给我错误
"Type SwiftViewController does not conform to protocol ABCDelegate.
你能告诉我我遗漏了什么吗,因为我找到了其他帖子,但没有任何解释正确,如果你需要更多信息,也请告诉我。
@protocol ABCDelegate <NSObject>
@required
- (void) ABC:(NSString*)MessageResponseStr
@end
@interface ABC : NSObject
@property (nonatomic, assign) id<ABCDelegate> delegate;
@property(nonatomic,retain)NSString *ResponseStr;
-(void)Network:(int)NetworkState
协议定义抽象行为。
类似于许多其他语言的界面。 ABCDelegate
协议简单地声明:任何将实现我的东西,都需要指定以下必需的方法,并且可以选择实现以下可选方法。
在您的情况下,您的 class 需要实施所需的协议 ABC
方法。
当您在 ABC
class 中定义协议时,您将协议方法声明为 @required
,如 -
@protocol ABCDelegate <NSObject>
@required
- (void) ABC:(NSString*)MessageResponseStr
@end
现在在 SwiftViewController
或任何实施该协议的 class 中,由于 @required
关键字,必须添加 - (void) ABC:(NSString*)MessageResponseStr
。
只要您实施该方法,错误就会消失。
希望对您有所帮助。
我试图在 Swift 中调用我的协议 Class,但它给我错误
"Type SwiftViewController does not conform to protocol ABCDelegate.
你能告诉我我遗漏了什么吗,因为我找到了其他帖子,但没有任何解释正确,如果你需要更多信息,也请告诉我。
@protocol ABCDelegate <NSObject>
@required
- (void) ABC:(NSString*)MessageResponseStr
@end
@interface ABC : NSObject
@property (nonatomic, assign) id<ABCDelegate> delegate;
@property(nonatomic,retain)NSString *ResponseStr;
-(void)Network:(int)NetworkState
协议定义抽象行为。
类似于许多其他语言的界面。 ABCDelegate
协议简单地声明:任何将实现我的东西,都需要指定以下必需的方法,并且可以选择实现以下可选方法。
在您的情况下,您的 class 需要实施所需的协议 ABC
方法。
当您在 ABC
class 中定义协议时,您将协议方法声明为 @required
,如 -
@protocol ABCDelegate <NSObject>
@required
- (void) ABC:(NSString*)MessageResponseStr
@end
现在在 SwiftViewController
或任何实施该协议的 class 中,由于 @required
关键字,必须添加 - (void) ABC:(NSString*)MessageResponseStr
。
只要您实施该方法,错误就会消失。
希望对您有所帮助。