将Obj-C模块添加到MonoTouch App

时间:2011-11-10 18:13:55

标签: objective-c ios user-controls xamarin.ios monodevelop

我正在寻找使用SIP功能创建iOS应用程序以实现各种功能。我在这里找到了Siphon项目:http://code.google.com/p/siphon/,并且看到它依赖于pjSip。

看起来我可以通过以下详细信息为pjSip库创建绑定:http://docs.xamarin.com/ios/advanced_topics/linking_native_libraries或者我可以直接在Siphon obj-c库中创建绑定,如下所示:http://docs.xamarin.com/ios/advanced_topics/binding_new_objective-c_types

是否可以在obj-c中创建代表拨号盘,控制器,视图,逻辑的“用户控件”等效项,然后将其添加到MT项目中,并具有该obj-c'用户控件'添加到MT中的表单?

我是obj-c和MT的新手,所以如果我错过了一些明显的东西,请告诉我,看起来很多内容已经因最近发布的版本而改变了。

更新 -

经过一些进一步的研究,看起来应该可以在Xcode / Obj-c中开发静态库。然后添加为MonoTouch的本机引用以及绑定和任何其他包。然后我应该能够调用库方法,该方法检索xib / controller并推送显示。我想这个工作类似于Asp.Net MVC领域?任何人都可以确认这种方法是否会起作用?

谢谢,

马特

2 个答案:

答案 0 :(得分:1)

我认为在5.0.1 Monotouch中有一种新的方法可以链接OBJ-C代码,它更容易使用:Link with Attribute。希望这对你有帮助。

答案 1 :(得分:1)

这似乎绝对可能。我在MT中创建了一个示例项目,它添加了对Tabku库的引用,并将TKCalendarMonthlyView放在一个表单上。然后,它使用包含的控制器/委托和捆绑资源进行交互。

我使用这个库是因为它存在绑定,有一个很好的集合可以找到here

此外,您还可以找到用于创建静态链接框架here的项目模板。

通过上述信息,我能够创建.a目标并定义绑定以构建.dll,我可以在MT中添加它作为参考。然后我添加了所需的捆绑(添加文件夹)资产,定义了一个新的显示视图 - 我们是金色的!

希望这有助于未来的任何人