Donc, ce problème est assez bizarre et un peu difficile à décrire. Essentiellement, j'ai un UITableView
où chaque cellule a une image, et UIView
couvrant une partie de l'image. Le UIView
a une couleur d'arrière-plan définie à environ 30% de blanc transparent, ce qui lui donne l'apparence d'effacer l'image en dessous. Il y a aussi des étiquettes et autres. Toutes ces vues sont ajoutées à une vue de conteneur parent unique, qui est finalement ajoutée à contentView
de la cellule. Tout fonctionne bien - jusqu'à ce que j'essaie de sélectionner la cellule. Pour une raison quelconque, chaque fois que la cellule est mise en surbrillance, la propriété backgroundColor
sur chacune de ces vues est définie pour effacer, jusqu'à ce que la cellule ne soit pas mise en surbrillance (à quel point l'ancienne couleur renvoie).iOS: UIView backgroundColor en vue de la table
Quelqu'un peut-il expliquer pourquoi cela se produit, et plus important s'il y a moyen de le réparer? Tout au plus je pourrais créer une seule image de pixel de blanc, tourner le UIView
dans un UIImageView
, et mettre son image à ce pixel - mais c'est inélégant au mieux. Aucune suggestion?
s'il vous plaît envoyez un peu de code de méthodes tableview didSelect et cellForRowAtIndexPath. –
Cochez http://stackoverflow.com/questions/5222736/uiview-backgroundcolor-disappears-when-fileviewviewcell-is-selected pour certaines options qui peuvent aider. –
Essayez [this] (http://stackoverflow.com/questions/6417590/how-to-disable-highlight-subviews-message-for-uiview-uiviewcontroller-in-ios-s), en remplaçant "_updateHighlightColorsForView" par "_setOpaque ". –