如何在KMM的通用主代码中使用iOS主代码?

问题描述 投票:0回答:1

我有一个具有共享 UI 的 KMM 项目。我正在尝试在 Android 和 iOS 中实现一些本机的东西。所以我有一个存在于 iOS 主模块中的 swift 类,我想在 ios 主模块的 kotlin 代码中使用它。

这是我的快速代码:

@objc class Employee: NSObject {
    @objc var name: String
    @objc var age: Int

    @objc init(name: String, age: Int) {
        self.name = name
        self.age = age
    }

    @objc func description() -> String {
        return "\(name) is \(age) years old."
    }
}

我在 iOS main 中有一个 Kotlin 类,我想在其中使用 swift 类。

class Caller {
    val emp = Employee() //unresolved Reference Employee
    actual fun description(): String {
        // emp.
        return ""
    }
}

这里的问题是我收到错误“未解决的参考员工”。

kotlin cross-platform kotlin-multiplatform
1个回答
0
投票

您是否能够直接在 Kotlin 中的

Employee
下实现
commonMain
类。这样,所有 Kotlin 代码以及 Swift/ObjC 中都可以使用它

© www.soinside.com 2019 - 2024. All rights reserved.