Это зависит от типа контента, который вы собираетесь добавлять динамически. Допустим, у вас есть большие текстовые данные для отображения, затем используйте UITextView и, поскольку он является подклассом UIScrollView, вы можете получить setContentSize TextView при назначении текстового содержимого. Исходя из этого вы можете установить общий размер UIScrollView.
float yPoint = 0.0f;
UIScrollView *myScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0f, yPoint, 320.0f, 400.0f)];
UITextView *calculatorTextView = [[UITextView alloc] init]; calculatorTextView.text = @"My looong content text ..... this has a dynamic content"; `
[calculatorTextView sizeToFit];
yPoint = yPoint + calculatorTextView.contentSize.height; // Bingo, we have the new yPoint now to start the next component.
// Теперь вы знаете высоту вашего текста и где он закончится. Таким образом, вы можете создать Label или другой TextView и отображать там свой текст. Вы можете добавить эти компоненты в качестве подпредставления к просмотру прокрутки.
UITextView *myDisplayContent = [[UITextView alloc] initWithFrame:CGRectMake(0.0f, yPoint, 300.f, calculatorTextView.contentSize.height)];
myDisplayContent.text = @"My lengthy text ....";
[myScrollView addSubview:myDisplayContent];
// В конце установите размер содержимого myScrollView равным общей длине области отображения.
[myScrollView setContentSize:yPoint + heightOfLastComponent];
Это работает для меня.