2010-03-27 8 views
6

Jusqu'à présent, je créais des plumes personnalisées pour créer ma cellule comme je le souhaitais, mais cette fois, la hauteur d'une cellule change de l'une à l'autre pour que je ne puisse pas créer une cellule. plume de la cellule de taille fixe.Vue de table avec cellule personnalisée (par programmation)

J'ai donc décidé de le créer par programme ... Est-ce que le chemin ci-dessous est le bon moyen de l'atteindre?

// Customize the appearance of table view cells. 
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    static NSString *CellIdentifier = @"Cell"; 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) { 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; 
     UILabel *pseudoAndDate = [[UILabel alloc] initWithFrame:CGRectMake(0.0,0.0,320.0,20.0)]; 
     [pseudoAndDate setTag:1]; 
     [cell addSubview:pseudoAndDate]; 
     [pseudoAndDate release]; 
    } 

    CommentRecord *thisRecord = [comments objectAtIndex:[indexPath row]]; 

    UILabel *label = (UILabel *)[cell viewWithTag:1]; 
    [label setText:[NSString stringWithFormat:@"%@ | %@",thisRecord.author,thisRecord.date]]; 

    return cell; 
} 

ou .. ai-je manqué quelque chose ici? Parce que jusqu'à présent, il ne semble pas fonctionner;)

Merci,

Gotye. Pourquoi créer une étiquette quand vous n'avez pas besoin de créer une étiquette?

Répondre

0

Nouveau lien pour personnalisé UITableViewCell par programmation Apple Documentation UITableViewCell

+0

Notez que les réponses [link-only] (http://meta.stackoverflow.com/tags/link-only-answers/info) sont déconseillées, les réponses SO devraient être l'aboutissement d'une recherche de solution (vs. encore une autre escale de références, qui ont tendance à se figer au fil du temps). S'il vous plaît envisager d'ajouter un synopsis autonome ici, en gardant le lien comme référence – kleopatra

0

Utilisez l'étiquette UITableViewCell.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

    static NSString *CellIdentifier = @"Cell"; 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) { 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; 
    } 

    CommentRecord *thisRecord = [comments objectAtIndex:[indexPath row]]; 

    cell.textLabel.text = [NSString stringWithFormat:@"%@ | %@",thisRecord.author,thisRecord.date]; 

    return cell; 
} 
Questions connexes