Page Brooks explains how to display a series of items each containing a header and an variable number of child items.
By itself, this is a fairly trivial problem to overcome, however, I had a few additional constraints that change the nature of the problem completely.
Constraint #1: Instead of scrolling, the layout must display whatever possible in the available height, and the remaining items should appear on subsequent pages.
Constraint #2: Each item will consist of a header and a variable number of sub items. If there is no remaining space to display sub items on the current page, the items should appear on the next page, along with the appropriate header. [...]