Je voudrais utiliser une version personnalisée de la norme de divulgation accessoire image dans mon UITableView. Comment puis-je faire cela? Je suis en espérant que les sous-classing UITableViewCell n'est pas nécessaire que quelque chose de cette base.
Réponses
Trop de publicités?- (UITableViewCell *)tableView:(UITableView *)tView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UIImage *indicatorImage = [UIImage imageNamed:@"Arrow.png"];
cell.accessoryView =[[[UIImageView alloc] initWithImage:indicatorImage] autorelease];
return cell;
}
eh bien, je le faire avec l'aide de code donné ci-dessus
J'ai rencontré le même problème que Greg--l'accessoire de vue n'est pas de la piste (si vous utilisez une UIImageView)
Je l'ai résolu comme ceci:
UIImage * image = [ UIImage imageNamed:@"disclosure-button-grey.png" ] ;
UIControl * c = [ [ UIControl alloc ] initWithFrame:(CGRect){ CGPointZero, image.size } ] ;
c.layer.contents = (id)image.CGImage ;
[ c addTarget:self action:@selector( accessoryTapped: ) forControlEvents:UIControlEventTouchUpInside ] ;
cell.accessoryView = c ;
[ c release ] ;
Vous n'avez pas besoin de sous-classer. Il suffit de créer un normal UITableViewCell, créer votre accessoire de vue - tout type de UIView va le faire, qui peut contenir des sous-vues, puis le définir comme le accessoryView de votre cellule.
Par défaut, une cellule ne dispose pas d'une accessoryView - si vous regardez le bien, vous verrez que c'est nul.