Monodevelop 2.8,XCode 3.2.6,Interface Builder:Outlets和Acti
编辑:由于我还没有安装XCode 4,我想知道MD 2.8是否与XCode 3.2.6完全兼容.特别是,我能够使用
MT documentation中描述的新程序连接Outlets和Actions吗?
我刚刚安装了MonoDevelop(MD)2.8.它似乎无法工作我期待. 在MD 2.6中,当我创建一个新的UIViewController时,该控制器如下所示: > Controller.xib< - 在同一棵树内 另外,如果我打开一个xib文件,Controller.xib,只打开Interface Builder(IB).如果我向xib添加插座,则插件在Controller.xib.designer.cs中可见. 在MD 2.8中,该控制器如下所示: > Controller.xib< - 不再在同一棵树内 > Controller.designer.cs 所以我有两个文件而不是一个. 另外,则会打开Controller.xib,IB和Xcode.如果我向xib添加插座,则设计器中不会显示插座. 有什么建议? 解决方法
MonoDevelop 2.8引入了一个新的xib设计器模型,以支持Xcode 4.
集成在Xcode 4中的Interface Builder不再支持在xib文件中定义类,出口和操作.这就是MonoDevelop不再可能使用从xib文件生成* .xib.designer.cs文件的模型.相反,Interface Builder从Objective-C源代码中读取出口和操作. MonoDevelop的解决方案是将C#类同步到Objective-C存根. 当你从MonoDevelop 2.8打开一个xib文件时,MonoDevelop会创建一个临时Xcode项目,其中Objective-C存根镜像所有暴露给Objective-C的C#类,即从NSObject继承并显式注册为[Register( “SomeName”)]属性.然后,它会在该项目的上下文中打开xib文件,以便Interface Builder将查看所有可用类型以及它们上的插座和操作.如果使用其控制拖动系统在Xcode 4中添加了出口和操作,那么它们会自动导回到MonoDevelop中的* .designer.cs文件中. 这意味着不再从其他文件生成设计器文件,而是存储信息的实际位置.现在,设计器文件与类而不是xib相关联. 这个新模型在支持Xcode 4的基础上有几个好处: >现在可以将多个xib文件引用到同一个类. 此外,现在手动编写插座要容易得多.例如,只需将Outlet属性应用于属性即可 [Outlet ("someView")] UIView SomeView {get; set; } 不幸的是,新模型意味着MonoDevelop不再集成在Interface Builder 3.2.x中创建出口和操作.我的建议是你升级到Xcode 4.加载和编辑pre-MD 2.8项目应该可以正常工作. 请参阅 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |