0
votes

Comment générer la même couleur aléatoire dans une vue de table pour une ligne de vue de la table pour une autre ligne de vue de table?

Dans mon application, je clique sur une rangée et il étend une autre ligne sous elle. Je veux générer une couleur aléatoire que lorsque je clique sur une rangée, l'arrière-plan de la rangée tourne de cette couleur et la ligne expansée sous elle active la même couleur. Comment puis-je obtenir les lignes pour générer la même couleur aléatoire?

J'ai créé une fonction pour générer une couleur aléatoire et que j'appelle la cellule de fonction pour la ligne lorsque ISOPÉNED est défini sur TRUE et j'appelle la même fonction de la cellule qui est étendu. xxx

une couleur aléatoire est générée, mais la ligne expansée génère une nouvelle couleur.


0 commentaires

4 Réponses :


0
votes

Insérer Func local Arter: let _Color = generaterAnandomcolor () Cette valeur peut être attribuée, les éléments qui doivent avoir la même couleur.


0 commentaires

2
votes

Vous devrez stocker les couleurs aléatoires générées. Chaque fois que vous appelez GeneraterAdomColor (), une nouvelle est faite. Ce que je ferais, c'est créer un dictionnaire de lignes aux couleurs.

if let color = colors[indexPath.row] {
        // Expand the cell with the new color
}


0 commentaires

0
votes

Modifiez votre section DataSource pour inclure la couleur, comme: xxx pré>

juste avant la ligne si indexpath.row == 0 { code>, Ajouter après P>

var backgroundColor: UIColor! = self.tableViewData[indexPath.section].color
if backgroundColor == nil {
    backgroundColor = generateRandomColor()
    self.tableViewData[indexPath.section].color = backgroundColor
}
cell1.backgroundColor = backgroundColor


0 commentaires

0
votes

J'ai essayé toutes ces méthodes et je n'ai trouvé que celui qui a fonctionné comme je le voulais.

Je devais modifier mon DataSource: xxx

} xxx


0 commentaires