Je dois placer un bouton immédiatement au-dessus d'un UIViewTable à remplissage dynamique. Il se sent droit de ne pas remplir la première cellule (ligne 0), mais plutôt utiliser la zone d'en-tête, donc j'utiliser la méthode UITableViewDelegate pour créer par programmation un UIView contenant un UIButton:Ajout d'un UIButton dans l'en-tête de l'en-tête UITableView
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0,0, 320, 44)] autorelease]; // x,y,width,height
UIButton *reportButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
reportButton.frame = CGRectMake(80.0, 0, 160.0, 40.0); // x,y,width,height
[reportButton setTitle:@"rep" forState:UIControlStateNormal];
[reportButton addTarget:self
action:@selector(buttonPressed:)
forControlEvents:UIControlEventTouchDown];
[headerView addSubview:reportButton];
return headerView;
}
Cependant, comme décrit ci-dessous, la le bouton n'a pas l'espace nécessaire (je m'attendais à ce que la hauteur de l'en-tête respecte l'argument 44).
Quel est le problème ici? Je devrais ajouter que UITableView est créé dans un fichier XIB séparé.
Non c'était ça. Merci. – maralbjo