126 votes

Hauteur par défaut de la section d'en-tête dans UITableView

Je veux régler la hauteur de la première en-tête dans ma UITableView. Pour les autres en-têtes, je veux qu'ils restent à la hauteur par défaut. Quelle est la valeur de/constante puis-je mettre à la place de "someDefaultHeight" dans le code ci-dessous?

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    if (section == 0)
    	return kFirstHeaderHeight;

    return someDefaultHeight;
}

Merci

205voto

Ajaxharg Points 988

Dans la version 5.0 d'IOS, vous pouvez retourner UITableViewAutomaticDimension dans la plupart des délégué méthodes. De ses en bas de la page de documentation

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if(indexPath.section == CUSTOM_SECTION)
    {
        return CUSTOM_VALUE;
    }
    return UITableViewAutomaticDimension;
}

51voto

paulthenerd Points 6568

De vérifier les valeurs par défaut dans mon application, elle ressemble à un groupés tableau de la valeur par défaut est d'une hauteur de 22 et pour une table non regroupées par défaut est à une hauteur de 10.

Si vous vérifiez la valeur de la propriété sectionHeaderHeight sur votre tableview qui devrait vous dire.

26voto

BadPirate Points 11614

En fait faire l'affaire :)

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    if(section == 0)
        return kFirstSectionHeaderHeight;
    return [self sectionHeaderHeight];
}

2voto

Jason George Points 5507

Je ne suis pas sûr de ce que la bonne réponse est ici, mais ni 10 ou 22 semble être à la bonne hauteur pour un groupe de table dans iOS 5. Je suis à l'aide d'44, basée sur cette question, et ce au moins semble à peu près à la bonne hauteur.

-1voto

Yogesh D Points 19

Ceci devrait faire l'affaire

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if(indexPath.section == CUSTOM_SECTION)
    {
        return CUSTOM_VALUE;
    }
    return [tableView rowHeight];
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X