J'ai une cellule de tableau à laquelle j'ajoute des sous-vues par programme. Toutes les sous-vues textuelles fonctionnent bien, mais je ne peux pas faire fonctionner une sous-vue d'image.UIImageView n'apparaît tout simplement pas dans la personnalisation UITableViewCell
Vous remarquerez que j'ai défini la couleur d'arrière-plan au noir. C'est simplement pour m'indiquer que la sous-vue est en train d'être initialisée et positionnée correctement dans la cellule. Lorsque je supprime la couleur de fond, il n'y a rien.
En outre, le style de cellule est UITableViewCellStyleDefault mais je ne pense pas que ce soit pertinent pour les sous-vues personnalisées. Je veux que l'image soit positionnée sur la droite, c'est pourquoi je n'utilise pas la propriété standard imageView
que les cellules offrent.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
// ... add textual views ...
UIImageView *img = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"clock.png"]];
img.frame = CGRectMake(271.0f, 10.0f, 19.0f, 22.0f);
img.backgroundColor = [UIColor blackColor];
[cell addSubview:img];
}
// ... more code ...
return cell;
}
Êtes-vous sûr que clock.png est ajouté à votre projet? – tidwall
Oui. C'est dans un sous-groupe imbriqué dans mon projet, mais cela n'a pas d'importance pour d'autres images. L'image s'affiche correctement lorsque je l'ai définie via un ImageView dans IB et que j'utilise une cellule créée par IB (que je ne peux pas faire maintenant pour des raisons complètement différentes ...). – thebossman
Où est votre référence à votre cellule personnalisée? – Sharme