我有一个接受类型为id
的参数的Objective-C方法,我想传递一个Swift结构体。
ObjcClass.m
文件:
@implementation ObjcClass
+ (void)addListener:(id)listener {
// Do something with listener
}
DemoStruct.swift
文件:
struct DemoStruct {
func registerAsListener() {
ObjcClass.addListener(self) // Can't find a way to do this
}
}
我得到的编译错误信息如下:
所以我的问题是,如何使Objective-C方法接受类型“DemoStruct”不符合协议“AnyObject”
Any
而不是AnyObject
,并且是否存在这样的方法?
public class Box<T>:NSObject
不是吗? - Fattie