J'ai eu le même problème sur iOS 5.1 en utilisant le code suivant:
Créer le contrôleur de navigation & ajouter une table Voir
UINavigationController *navigationController = [[UINavigationController alloc] init];
[navigationController setModalPresentationStyle:UIModalPresentationFormSheet];
[navigationController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
[navigationController.navigationBar setBarStyle:UIBarStyleBlack];
[navigationController.navigationBar setTranslucent:TRUE];
[navigationController setNavigationBarHidden:NO animated:NO];
[self presentModalViewController:navigationController animated:YES];
MyTableViewController *aTableViewController = [[[MyTableViewController alloc] initWithStyle:UITableViewStylePlain] autorelease];
aTableViewController.navigationItem.rightBarButtonItem = buttonItem;
[navigationController pushViewController:aboutTableViewController animated:YES];
Ajouter une table en-tête Vue sur la table
ATableHeaderView aTableHeaderView = [[[ATableHeaderView alloc] initWithFrame:aboutTableView.frame] autorelease];
[aTableHeaderView setAutoresizingMask:UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleTopMargin];
[aTableHeaderView sizeToFit];
[aTableView setTableHeaderView:aTableHeaderView];
dans la vue d'en-tête de la table, j'ai ajouté quelques étiquettes
UILabel *aLabel = [[[UILabel alloc] initWithFrame:CGRectMake(x,y, width, height)] autorelease];
[aLabel setText:aString];
[aLabel setAutoresizesSubviews:YES];
[aLabel setAutoresizingMask:UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth];
J'ai fini avec le contenu d'en-tête de table sous la barre de navigation. Changer la barre de navigation en noir fixe le fixe. Mais ce n'est pas ce que je voulais. Après quelques essais et erreurs, j'ai supprimé la ligne:
[aLabel setAutoresizingMask:UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth];
De la configuration de l'UILabel dans l'en-tête et le problème est résolu. J'ai un en-tête translucide et le contenu de la table est positionné correctement.
Bonjour Ben, ma NIB ressemble à ceci: http://dl-client.getdropbox.com/u/57676/controller.png. J'ai un UINavigationController qui se trouve dans MainWindow.NIB avec son contrôleur de racine réglé là.Tout ce que j'ai fait, c'était ajouter une tableView à ma vue, un UINavigationItem, et j'espérais que ça marcherait. – Coocoo4Cocoa
Y a-t-il quelque chose de propriétaire là-dedans? Si vous voulez, vous pouvez m'envoyer le code (ben à standalone dot com) et je vais jeter un coup d'oeil à elle; l'image du fichier nib n'aide pas beaucoup, hélas. –
Probablement préférable d'afficher le code ici, ou, si c'est trop long, un autre site et s'y référer à partir d'ici. De cette façon, nous pouvons tous contribuer. –