Build xib Interface Builder and load them as subvi

2020-07-30 01:45发布

问题:

what I would like to know if it's possible to build a view and its correspondent xib file. Then, in a generic controller, load this view programmatically and add as a subview to the current view.

This subview should act as a generic info box which can be loaded by many controller.

thanks Leonardo

回答1:

I found solution myself, after looking at some stackoverflow thread. So I would like to share what I found and see if it's an acceptable solution. Basically this is what I did:

  1. create a MyView.m view file with all my required IBOutlet
  2. build a MyView.xib view in interface builder, leaving default file's owner and set view as MyView.m
  3. use this piece of code

      NSArray *xib = [[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil];
      MyView * myView = [xib objectAtIndex:0];
      [self addSubview:myView];
    

It works, actually...