从 objective c 调用 swift class(派生自 NSObject class)

call swift class (derived from NSObject class) init from objective c

我有一个 Swift class 继承自 Objective-C.

中的 NSObject 派生 class
@objc class DisplayMessage : JSQMessage, BaseModel
{
 init(var userId:String, var userName:String, var message:String, var group:Group)
    {
//...
     }
}

如何从 Objective-C 调用这个初始化?

我只看到 JSQMessage(NSObject 派生的 class 用 obj-c 编写)inits.. + 没有参数的默认 init 方法

更新

我在 swift 中的 init 前面插入了一个 @objc,我得到了错误

Method cannot be marked @objc because the type of the parameter 1,2,3,4 cannot be represented in objective-c

看到这里,我把String类型改成了NSString,Groupclass已经是@objc了;我仍然收到同样的错误

更新 2

我用 Int 初始化程序尝试过同样的事情,但我得到了同样的错误

  @objc init(var numberLol:Int)
{
    super.init(senderId: "", senderDisplayName: "", date:nil,  text: nil)
}

好的所以答案是我必须从 init 中的每个参数中删除 "var"。为什么? idk