2011-02-15 14 views

risposta

56

Un UITableViewCell personalizzato non è necessario per aggiungere semplicemente un'immagine sul lato sinistro della cella. È sufficiente configurare la proprietà ImageView della cella UITableView nel tableView: cellForRowAtIndexPath: metodo delegato in questo 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 meno che non si fornisce un tableView: heightForRowAtIndexPath: metodo nel UITableViewDelegate, l'altezza di default di un UITableViewCell è di 44 punti, che è 44 pixel su un display senza retina e 88 pixel su un display retina.

+1

@ thomas: è stato molto utile e importante –

+0

Hai menzionato l'altezza della UITableViewCell stessa, i 44 punti non hanno nulla a che fare con la dimensione di UIImageView, come richiesto .. – ingenspor

+0

@ingenspor, dato che la cella ha 44 punti di altezza, quindi anche la vista dell'immagine sarà alta 44 punti. –

0

Sì, è possibile aggiungerli ovunque nella cella. Infine, dovrebbero essere comunque grandi (o piccoli) che abbiano senso per la tua applicazione.

+0

qualsiasi puntatore su come farlo? – jason

+0

Sì, consultare il codice di esempio della suite tableview per come creare una cella personalizzata. Posiziona una visualizzazione immagine sulla cella personalizzata nella posizione in cui desideri che sia e, quando imposti l'origine dati tableview, utilizza questa visualizzazione personalizzata, aggiungi l'immagine alla visualizzazione immagine e sii felice. – jer

Problemi correlati