There are two ways to pull a view out of a xib.
If it is the main view of a view controller, then this just happens more or less automatically when an instance of the view controller needs its view (because they are associated by name or by the way the view controller was instantiated).
Otherwise, do this: have the view be the sole top-level object in its xib, and load the xib and grab that sole top-level object, like this:
NSArray* objects = [[UINib nibWithNibName:@"SomeName" bundle:nil] instantiateWithOwner:nil options:nil]; UIView* v = objects[0];
And now you can plunk that newly instantiated view into your interface. As you rightly say, you can do that over and over to get more instances.
NOTE: A third way is to load the xib with an owner that has an outlet to the view, but to explain that requires more detail than I want to go into here, and it probably doesn't get you anything you need at the moment.