I just ran into this problem and I think that you cannot use makeViewWithIdentifier: owner: when you use dedicated Nib to populate View based tables.
The problem is with file owners (i.e., view controllers). makeViewWithIdentifier: owner: seems to be intended for use with the self as the owner for simple user views.
Typically, if you have a separate tip for a custom view with outputs, you will also need a separate view controller. Otherwise, if your custom view has a way out and many custom views are displayed in the table, what conclusion do you feel about the table ownerβs own owner?
So, in my test, I have AppDelegate as the delegate / data source of Table View. I have CellView.xib and CellViewController.h / .m with interface outputs. Then in my method tableView: viewForTableColumn: string: I have this code:
SSCellViewController *vc = [[SSCellViewController alloc] initWithNibName:@"CellView" bundle:nil]; return vc.view;
What you lose is cell reuse, which happens automatically with makeViewWithIdentifier: owner :. To implement this yourself, you will also probably have to deal with managing many of the created view controllers.
I may still be missing something as I come to the development of OS X after many years of working with iOS.
Silromen
source share