The content size should be set to the size of the content within, not to the applicationsFrame.  Content size can be much longer than the screen size.

It is typical for you to add controls in viewDidLoad, and with each addition increment a variable for the 'y' position.  You then set the content view's height based on this y position.