OnClick changement tablerow couleur d'arrière-plan
Donc j'essaye de trouver un moyen facile d'obtenir la couleur d'arrière-plan ou une ligne de tableau à changer lorsque son cliqué sur. J'ai essayé de trouver un moyen d'appeler ce que la couleur d'arrière-plan et de le vérifier, mais je n'ai pas trouvé un moyen d'appeler la couleur. Voici ce que j'ai en ce moment.
RowName = (TableRow) findViewById(R.id.RowName);
RowName.setBackgroundColor(Color.TRANSPARENT);
RowName.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (RowName.equals(Color.TRANSPARENT))
RowName.setBackgroundColor(Color.YELLOW);
else if (RowName.equals(Color.YELLOW))
RowName.setBackgroundColor(Color.TRANSPARENT);
}
});
Je sais que c'est mal. J'espère que vous pouvez voir ce que je suis en train d'accomplir. Si non, ce que je veux faire est d'avoir la table de la ligne de départ de la transparence. Lorsque quelqu'un clique sur la ligne du tableau je veux changer de couleur jaune. Ensuite, si vous cliquez à nouveau, je veux revenir à la transparence. Merci.
OriginalL'auteur Joshua Sutherland | 2010-12-10
Vous devez vous connecter pour publier un commentaire.
Vous devez définir la couleur d'arrière-plan de votre ligne à une liste d'état drawable (qui gère les sélectionner, pressé, actif, non actif).
http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList
Le XML doit ressembler à quelque chose comme ceci:
Ok, je vois ce que vous faites maintenant. Eh bien l'état de la liste n'est probablement pas ce que vous voulez, mais plutôt quelque chose de semblable à ce que vous avait à l'origine. Ont de nombreuses lignes avez-vous? Parce que si vous n'avez pas que beaucoup de, vous pouvez garder une variable autour de qui enregistre l'état de la ligne (au lieu de regarder le contexte actuel).
J'ai entre 20 et 25 lignes.
OriginalL'auteur Josh Clemm
Voici donc ce que la liquidation de travail. Assurez-vous d'avoir votre TableRows nommé. Avant mon sur créer j'ai
J'ai aussi
. J'ai ensuite ajouter le code
À le faire fonctionner, allez dans votre xml et dans la propriété OnClick ajouter RowName ou le nom du public void que vous travaillez avec.
Profitez de.
OriginalL'auteur Joshua Sutherland