Xamarin.iOS 和 Swift 的互操作性

n.t*_*n.t 3 c# xamarin.ios ios swift

对于使用 Xamarin.iOS 用 C# 编写的现有应用程序,Swift 是否可以接管并将现有应用程序用作库?

该应用程序使用不同的框架,如 Vici CoolStorage、Google Maps、SQL Cipher,它们都包含在 C# 解决方案中,所以我认为它们留在 C# 解决方案中非常重要,但可以从 Swift 部分访问。

我问这个是因为 Swift 对我来说看起来很好(我一直喜欢 scala)而且在我看来 Xcode 已经改进了很多,所以我想尝试更接近 iOS,但我不想失去为应用程序所做的全部努力(几个月的开发)。

mig*_*aza 5

这是目前不可能的。

您可以做的是将主要代码保留在 C# 中,然后从您的 C# 代码调用 Swift。为此,您必须创建一个 Swift 库并将结果呈现给 Objective-C,然后提供对 Objective-C 代码的绑定,以便您可以从 C# 中调用它。

一个更简单的选择是直接在您的项目中尝试 F#,这是一种完整的函数式语言,具有 Swift 的几乎所有功能以及更多功能。