2011-11-06 8 views
0

Je reçois des données du serveur json de manière asynchrone et je les mets dans mes cellules de vue de table. J'essaye de faire la taille de cellule sur la base dynamique selon le contenu de texte. Je l'ai trouvé à ce sujet sur Internet, mais partout son étant donné le même code, en utilisant -hauteur de la cellule uitableview dynamique

(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 

Je ne reçois pas comment mettre en œuvre this.Please me guider.

Répondre

0

Dans cette méthode, calculez la hauteur des images, du texte utilisé dans chaque ligne et renvoyez la hauteur en tant que valeur flottante.

Pour exemple:

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { 

float totalHeight = 0.0; 

BOOL ImageToBeDisplayed = [[yourDataArray objectAtIndex:indexPath.row][email protected]"yourImageKey"]; 

if(ImageToBeDisplayed) 

totalHeight = 100 or some value of your choice 
} 
else{ 
//Do nothing 
} 

If your row has string data as well. 

int length = [[[yourDataArray objectAtIndex:indexPath.row][email protected]"yourTextKey"] length]; 
if(length<40) 
totalHeight + = 50; 
else if (length<80 && length>40) 
totalHeight + = 100; 
and so on 

and 


return totalHeight; 

} 
+0

Merci :-) jones – codejunkie

+0

pourquoi y at-il des constantes codées en dur? Que faire si la taille de la police change? – mskw

Questions connexes