Cómo incrustar un UITableView en un UIScrollview

¿Cómo puedo hacer lo siguiente en un UIViewController (que contiene una vista de tabla como una subvista)?

Inicialmente tengo un UIViewController que muestra una sección de vista previa (UIView)

<code>//Setup container for preview section
UIView *tempContainer = [[UIView alloc]initWithFrame:CGRectMake(0, 20, 320, 100)];
self.preview_answer_container = tempContainer;
self.preview_answer_container.backgroundColor = [UIColor clearColor];
[tempContainer release];
[self.view addSubview:self.preview_answer_container];
</code>

También agregué un UITableView (y una barra de búsqueda) a continuación

<code>//setup tableview
UITableView *tempTable = [[UITableView alloc]initWithFrame:CGRectMake(0,44 ,320,self.view.frame.size.height - 44)];
self.tagFriendsTableView = tempTable;
self.tagFriendsTableView.delegate = self;
self.tagFriendsTableView.dataSource = self;
[tempTable release];

[self.view addSubview:self.tagFriendsTableView];
</code>

Con esta configuración, mi área de desplazamiento es pequeña (solo el área estática debajo de la sección de vista previa)

¿Cómo puedo modificar mi código de manera que 1) Puedo desplazar la página completa hacia arriba, es decir, la sección de vista previa y la vista de tabla se desplazarán hacia arriba juntos? pero los contenidos en el UITableView todavía son desplazables

EDITAR:

Código añadido para la vista UIScroll. Sin embargo, nada cambió para mí. ¿Qué está mal con mi código?

<code>//setup scroll view
UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];

//Search
UISearchBar *tempBar = [[UISearchBar alloc]initWithFrame:CGRectMake(0, 120 + 20, 320, 44)];
self.sBar = tempBar;
[tempBar release];
self.sBar.delegate = self;
self.sBar.tintColor = [UIColor colorWithHexString:@"#b6c0c7"];
self.sBar.placeholder = @"Search for FB and DM friends";

[scroll addSubview:sBar];

//setup tableview
UITableView *tempTable = [[UITableView alloc]initWithFrame:CGRectMake(0,144 + 20 + 20 ,320,self.view.frame.size.height - 144 - 20 - 20 - 44)];
self.tagFriendsTableView = tempTable;
self.tagFriendsTableView.delegate = self;
self.tagFriendsTableView.dataSource = self;
[tempTable release];

//Add the scroll view to the parent view
[scroll addSubview:self.tagFriendsTableView];

scroll.contentSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height);
[self.view addSubview:scroll];
[scroll release];
</code>

Respuestas a la pregunta(5)

Su respuesta a la pregunta