2011-02-15 13 views

Respuesta

56

No se requiere una UITableViewCell personalizada simplemente para agregar una imagen al lado izquierdo de la celda. Simplemente configure la propiedad imageView de la célula UITableView en su tableView: cellForRowAtIndexPath: método delegado de este modo:

- (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]; 

    cell.textLabel.text = @"I'm a UITableViewCell!"; 
    cell.imageView.image = [UIImage imageNamed:@"MyReallyCoolImage.png"]; 

    return cell; 
} 

A menos que usted proporcione una tableView: heightForRowAtIndexPath: método en su UITableViewDelegate, la altura predeterminada de un UITableViewCell es de 44 puntos, que es 44 píxeles en una pantalla no retina y 88 píxeles en una pantalla Retina.

+1

@ thomas: fue muy útil e importante –

+0

Menciona la altura del UITableViewCell en sí mismo, los 44 puntos no tienen nada que ver con el tamaño de UIImageView, como se solicitó .. – ingenspor

+0

@ingenspor, ya que la celda tiene 44 puntos de altura, entonces también la vista de la imagen tendrá 44 puntos de altura. –

0

Sí lo es, puede agregarlos donde desee en la celda. Finalmente, deben ser grandes (o pequeños) que tengan sentido para su aplicación.

+0

¿algún puntero sobre cómo hacerlo? – jason

+0

Sí, consulte el código de ejemplo de suite de tableview para saber cómo crear una celda personalizada. Coloque una vista de imagen en su celda personalizada en la posición en la que desea que esté, y cuando configure su fuente de datos de tabla vista, use esta vista personalizada, agregue la imagen a la vista de imagen y sea feliz. – jer

Cuestiones relacionadas