I've been fiddling with this issue for several days now, and I cannot seem to get it right.
I am trying to construct a UITableView that should look similar to the following mockup:

- Outer layout: UITableViewCell
- Red layout: A stand-alone .xib UIView with a single UIView
- Blue layout: The inner layout. Several of these should be able to exist inside a single Red layout, on top of each other, as described in the second Cell.
This is, as far as I can tell, the most optimal way to lay this out on the UI. However I cannot seem to get the height of the cell (For the GetHeightForRow method), no matter what I try.
Loading and adding the views isn't the problem, the problem is after they're loaded, to fill the different UI elements with data, and get the size of them.
I have tried using SizeToFit, but the only elements it seems to have effect on, is UILabels. Even when the UILabel's frame changes to something like 300 height and I call SizeToFit on the UI containing the label, it (the UIView) still remains at 320x100. Which means when it's rendered, it's looking all wrong.
The way I'm trying to calculate the height is very similar to Point 4 on the accepted answer at https://stackoverflow.com/a/18746930/2520789 . That is, creating a single cell in memory, and filling it with data for each row, and then getting the Height on that cell.