Load XIB into ViewController Xamarin?

北城以北 提交于 2019-12-21 15:01:13

问题


It is possible to create and load view from a custom XIB in xamarin? In Objective-C is like:

self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.window.rootViewController = self.viewController;

回答1:


1 - Create your XIB file (example MyView).

2 - In the .cs related to the XIB file add this static creator method:

partial class MyView : UIView
    {
        public MyView (IntPtr handle) : base (handle)
        {    
        }

        public static MyView Create()
        {    
            var arr = NSBundle.MainBundle.LoadNib ("MyView", null, null);
            var v = arr.GetItem<MyView>(0);

            return v;
        }
    }

3 - Add MyView to the ViewController:

public partial class ViewController : UIViewController
{
    MyView v;
    public ViewController (IntPtr handle) : base (handle)
    {
    }

    public override void ViewDidLoad ()
    {
        base.ViewDidLoad ();

        v = MyView.Create();
        v.Frame = View.Frame;
        View.AddSubview (v);
    }
}

You can read more here.



来源:https://stackoverflow.com/questions/37762812/load-xib-into-viewcontroller-xamarin

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!