将Obj-C翻译成C#(Monotouch)

时间:2010-12-15 18:29:33

标签: objective-c xamarin.ios

不知道Obj-C我可以使用一些帮助来翻译这一行代码:

[[TVOutManager sharedInstance] startTVOut]; 

进入我可以在MonoTouch中使用的C#版本。

我已经设法将XCode项目编译成静态库,现在我正在试图弄清楚如何打开它...原始项目发布在这里:http://www.touchcentric.com/blog/

TIA, 瑞克

1 个答案:

答案 0 :(得分:3)

[obj myMsg]是Objective-C语法,用于将myMsg消息发送到obj实例。乍一看,它很像C#中的obj.myMsg()。然而,Objective-C使用消息传递而不是函数调用,因此两者在语义上实际上是非常不同的。您通常可以掩饰差异,但如果您要在OS X或iOS上做任何重要工作,那么值得仔细阅读Objective-C语言guide。我不是MonoTouch / MonoMac专家,但我相信您的具体问题的答案是:

TVOutManager.sharedInstance.startTVOut();

假设sharedInstance被映射为类型TVOutManager

的静态属性
TVOutManager.sharedInstance().startTVOut();

如果sharedInstance被映射为Objective-C中的类方法。