Comment définir la dynamique de la hauteur de la cellule basée sur le contenu
Je suis une appli qui nécessite pour afficher les commentaires de l'utilisateur dans une cellule de tableau. Comment puis-je définir la dynamique de la hauteur de la cellule en fonction du contenu de la cellule comme dans Instagram?
En gros, j'ai des textes et des commentaires qui ont une longueur différente dans les différentes cellules. Quelqu'un peut-il me conseiller sur comment je peux mettre en œuvre la dynamique de la hauteur de méthode (comme instagram)?
OriginalL'auteur Zhen | 2011-06-14
Vous devez vous connecter pour publier un commentaire.
Vérifier la UITableViewDelegate documentation.
Garder à l'esprit que vous ne pouvez pas la référence de la cellule à partir de cette méthode, si vous voulez calculer la hauteur du contenu séparément et de les utiliser pour générer la hauteur.
Cela dépend de comment vous allez dessiner votre cellule. Si, par exemple, vous avez été d'avoir une UIImageView à venir à partir d'un tableau de UIImages et un UILabel qui affiche un NSString à partir d'un tableau de NSStrings vous seriez de retour
[imagesArray objectAtIndex:indexPath.row].size.height + spaceBetweenImageAndLabel + [[stringsArray objectAtIndex:indexPath.row] sizeWithFont:fontYouWillUseInCell constrainedToSize:sizeThatIsWidthOfLabelXmaxHeight lineBreakMode:UILineBreakModeYouWantToUse].height
OriginalL'auteur simon aplin
Combiner mon étiquette dynamique catégorie ici avec mon tableau dynamique la hauteur de la cellule ici. Combinaison parfaite!
Bien sûr...s'accrocher permettez-moi de déterrer le code 🙂
Jetez un oeil à la UILabel+propriétés dynamicheight... si vous appelez la méthode + (double)getSizeWithText:(NSString *)texte andWidth:(double)largeur forFont:(UIFont *)de la police, il retourne la hauteur de la cellule. Puis, dans la dynamique de la hauteur de la cellule de code, lorsque vous revenez à la hauteur de la cellule, il suffit de créer une version de la cellule, définir le contenu et d'obtenir la taille retournée.
OriginalL'auteur Simon Lee
Vous devriez lui donner un coup d'oeil à three20 de bibliothèque de code source, qui offre complexe de cellules comme les cellules que vous voulez faire. Il peut vous donner des réponses sur la façon de le faire, même si vous n'avez pas l'intention de l'utiliser:
OriginalL'auteur Vincent Guerci
Vous devez vous référer à cette question. La réponse est ici.
Dynamique UITableView hauteur dans UIPopoverController (contentSizeForViewInPopover)?
OriginalL'auteur Legolas