2010-01-23 3 views
43

Je veux mettre un UIImage dans le côté gauche de chaque ligne dans un UITableView. C'est assez standard, et est pris en charge directement par UIKit. Mais mettre une (grande) image provoque toutes sortes de problèmes, donc je suppose que je suis supposé mettre la chose correctement à l'échelle moi-même. Mais aucun des docs ne donne une taille par défaut pour cette image en utilisant les vues standard out of the box-- Je suis surpris.Quelle est la taille par défaut de UIImage dans un UITableViewCell?

D'autres sur SO indiquent que 44 est la hauteur par défaut d'une ligne (What is the default height of UITableViewCell?) 44x44 est la taille d'image "par défaut"?

Merci!

Répondre

68

40x40

UITableViewCell's imageView fit to 40x40

Besoin de faire imageView rempli 40x40 ... J'utilise SDK 3.0 avec la construction dans "Objets cellulaires dans les styles ..." pré-définies

+2

En rétine quelle serait la taille de l'image dans tableviewcell? Est-ce 80 * 80? – Dee

+3

@Dee oui cela correspond à 80x80 dans Retina –

3

Je suis sur la construction de Xcode 4.6.3 pour iOS 6.1. J'ai essayé 2 tailles d'image assignées à imageView de l'UITableViewCell: 48x48 et 128x128 pixels. Cela a été exécuté dans le simulateur iOS (iPad).

Dans le UITableViewDelegate, j'ai mis la ligne suivante dans tableView:didSelectRowAtIndexPath: et de mettre un point d'arrêt juste après.

UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath]; 

En LLDB, je reçois cette sortie:

(lldb) po cell 
$0 = 0x0751a720 <UITableViewCell: 0x751a720; frame = (0 88; 180 44); text = 'widget'; autoresize = W; layer = <CALayer: 0x751a6f0>> 
(lldb) po cell.imageView 
$1 = 0x0751a1e0 <UIImageView: 0x751a1e0; frame = (0 0; 43 43); opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x751a1b0>> 

La seule conclusion que je peux formulons sur la base de cette preuve est que la taille de l'image par défaut est pas 40x40.

Questions connexes