web-dev-qa-db-fra.com

Quelle est la taille par défaut de l'UIImage dans une UITableViewCell?

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 tracas, donc je suppose que je suis censé dimensionner correctement la chose moi-même. Mais aucun des documents ne donne une taille par défaut pour cette image en utilisant les vues standard hors de la boîte - je suis surpris.

D'autres sur SO indiquent que 44 est la hauteur par défaut d'une ligne ( Quelle est la hauteur par défaut de UITableViewCell? ) Est-ce que 44x44 est la taille d'image "par défaut"?

Merci!

44
Ben Zotto

40x40

l'imageView de UITableViewCell s'adapte à 40x4

Besoin de faire imageView rempli en 40x40 ... J'utilise SDK 3.0 avec build dans "Cell Objects in Predefined Styles" ...

71
David Sowsy

Je suis sur 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 UITableViewDelegate, je mets la ligne suivante dans tableView:didSelectRowAtIndexPath: et mettre un point d'arrêt juste après.

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

Dans lldb, j'obtiens 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 tirer sur la base de ces preuves est que la taille d'image par défaut est pas 40x40.

3
Jeff