2009-12-30 4 views
0

En guise de suivi à: UILabel subview in UITableViewCell isn't showing up. (iPhone Dev)textLabel de UITableViewCell chevauche une étiquette de sous-vue, comment puis-je le réparer? (IPhone Dev)

J'ai trouvé que le UILabel j'ajouté en tant que sous-vue montre et correctement positionné, cependant, il semble quand je mis labelField de la cellule « chevauchement » l'étiquette que j'ai ajoutée dans la sous-vue.

En d'autres termes « bar » montre que quand je commente la première ligne de l'extrait de code suivant:

 

cell.textLabel.text = @"foo" 
// sub view text label 
UILabel *valueField = (UILabel *)[cell viewWithTag:111]; 
valueField.text = @"bar"; 
 

Yat-il un moyen de rendre le cell.textLabel superposez pas les UILabel qui est sur la "même ligne"? peut-être en ajustant l'image sous-jacente de cell.textLabel?

Ce problème semble également se produire uniquement lorsque je compile avec un SDK> 2.2.1, est-ce que quelque chose a changé qui affecterait cela dans 3.0?

Merci

+0

aimerais savoir pourquoi le vote down ... – mmattax

+0

Pourquoi êtes-vous placer une étiquette en tant que sous-vue de la cellule lorsque la cellule a déjà une étiquette que vous pouvez utiliser? Je ne comprends pas. Utilisez-vous celui fourni dans le cadre de la disposition de cellule par défaut ou changez la position de l'étiquette que vous ajoutez ...? – Jasarien

+0

Je veux avoir l'étiquette par défaut alignée à gauche, avec une autre étiquette alignée à la droite de la rangée de cellules pour contenir des méta-informations, devrait être assez simple ... – mmattax

Répondre

0

UITableViewCell's Textlabel a un fond non clair. Je pense que la position de votre étiquette personnalisée à celle-ci est si minuscule que lorsque le textLabel par défaut affiche du texte, son arrière-plan couvre votre étiquette personnalisée (barre).

Modifier la couleur d'arrière-plan par défaut champ Textlabel dans ce message:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    [cell setBackgroundColor:[UIColor clearColor]]; 
} 
Questions connexes