问题描述
如何从 Kotlin 调用这个 Swift 扩展便利构造函数?
public extension UIView {
convenience init(svgData: Data,parser: SVGParser? = nil,completion: ((SVGLayer) -> ())? = nil) {
...
根据 Interop documentation,我希望这应该可行:
create(svgData = data,parser = null,completion = null)
但是,它不会编译 (Unresolved reference: create
),而且这种方法似乎会严重污染全局命名空间。另一方面,我真的看不到某个同伴对象的“规范”映射......
附言我已经读到静态扩展函数可以通过 Kotlin 中的伴随对象实现,但 UIView.Companion.create(...)
似乎也不起作用。
p.p.s.:正如有人指出 Kotlin 映射基于 ObjC(现已删除):也许这是相关的:Is it possible to call Swift convenience initializer in Objective-C(虽然没有帮助我弄清楚映射)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)