Existe-t-il un moyen d'insérer une vue d'en-tête de tableau (tableHeaderView) dans StoryBoard (comme nous le faisions dans Interface Builder)?
Existe-t-il un moyen d'insérer une vue d'en-tête de tableau (tableHeaderView) dans StoryBoard (comme nous le faisions dans Interface Builder)?
Réponses:
On dirait que l'on fait simplement glisser un contrôle vers le haut de la vue tableau. Je ne m'attendais pas à ce que ce soit aussi simple.
Avant de tomber
Après la chute
viewForHeaderInSection:
et j'ai eu une erreur disant "Impossible de satisfaire simultanément les contraintes". (Voir ma question ici: stackoverflow.com/questions/14554051/… )
Vous pouvez le faire facilement en faisant glisser votre UIView
/ UIImageView
juste en dessous du UITableView
dans le contour du document (au lieu de la mise en page).
Si vous essayez de faire glisser la mise en page au lieu du contour du document, vous UITableViewCell
passerez à la gestion supérieure, ce qui est frustrant!
Faire glisser et déposer une vue au-dessus de la vue de la table ne fonctionnait que pour une seule taille d'écran, au moins dans Xcode 11. Il n'était pas bien dimensionné sur différents écrans.
Je viens de créer une vue et je l'ai laissée derrière la vue de table dans le storyboard. J'ai créé un IBOutlet pour cela:
@IBOutlet weak var audioView: UIView!
Ensuite, dans le code tableview, j'ai fait:
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
return audioView
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 142
}
Cela a bien fonctionné sur toutes les tailles d'écran.
tableHeaderView
.