无法将在iOS中通用编写的Kotlin扩展功能用作Swift扩展

时间:2020-02-04 04:52:15

标签: ios swift kotlin kotlin-multiplatform

我有一个kotlin多平台项目设置,其中android和cocoapodsiOS

我在commonMain / src中有一个具有以下功能的Extensions.kt文件。

fun String.isValidEmail(): Boolean {
    return validate(ValidatorRegex.EMAIL)
}

**我可以在Android应用程序中以String扩展名访问此功能。

"abcd@gmail.com".isValidEmail()

但是在iOS中使用Swift的情况下,我需要将其称为静态类方法。

ExtensionsKt.isValidEmail("abcd@gmail.com")

它应该将commonMain / src方法转换为String的Swift扩展名,而不是使用Static方法的类。

我缺少任何配置吗?

1 个答案:

答案 0 :(得分:3)

您正在这里做所有事情。不幸的是,此选项暂时不可用。对于某些类,可以正确执行扩展名转换,但是Swift的String不是。这是一个已知的不便之处,K / N团队正在努力使其变得更好。