[英]Monotouch: load XIB asynchronously
我想知道调用外部XIB的正确方法是什么。
MonoTouch.Foundation.NSBundle.MainBundle.LoadNib
方法以同步方式加载XIB,但是,以这种方式,我无法覆盖ViewDidLoad
方法。
特别是,我的目标是创建一个自定义UIViewController
并加载在IB中创建的XIB(此元素是附加到Superview的项)。 然后,我将在自定义UIView
上附加一个轻UIView
。 如果不重写ViewDidLoad
方法,我将无法做到。
我如何找到一个好的教程来理解所有可以用于UIViewController
的不同构造函数?
例如,您能否解释这些因素?
public MyCustomView (IntPtr handle) : base(handle)
{
Initialize ();
}
[Export("initWithCoder:")]
public MyCustomView (NSCoder coder) : base(coder)
{
Initialize ();
}
public MyCustomView () : base("MyCustomView", null)
{
//---- this next line forces the loading of the xib file to be synchronous
MonoTouch.Foundation.NSBundle.MainBundle.LoadNib ("MyCustomView", this, null);
Initialize ();
}
非常感谢你。 最好的祝福。
在我看来,您尝试做的概念就像在CocoaTouch中更改默认事件和动作流的行为。
事实是,ViewDidLoad正是您应进行初始化的地方,而不是在构造函数本身中,而是将NIB加载在框架上,仅按预期方式处理ViewDidLoad。
确实有助于阅读苹果的开发文档,这在开始时对我有很多帮助: https : //developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/BasicViewControllers/BasicViewControllers.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.