更新:在下面回答。
我有一个接收 UIViewController 的静态 C 库,然后它使用该视图控制器来呈现它自己的 UIViewController,控制并显示一些 UI,然后释放。我在弄清楚如何将我的 UIViewController 从 C# 绑定/编组到该 C 函数时遇到问题。
我的 C# 代码创建了一个这样的类:
使用系统;使用 System.Collections.Specialized;使用 System.Runtime.InteropServices;
namespace ImportedUI
{
[StructLayout(LayoutKind.Sequential)]
public class MyUI
{
[DllImport("__Internal")]
protected extern static void MyUIInit(ref MonoTouch.UIKit.UIViewController viewController);
public MyUI(MonoTouch.UIKit.UIViewController viewController)
{
MyUIInit(ref viewController);
}
}
}
我的静态库函数定义是:
void MyUIInit(UIViewController *viewController);
上面有一个编组异常。