2017-06-11 1 views
-3
     if (buttons[2][2].getPaint().getColor()==color){ 
          buttons[2][2].setEnabled(false); 
         } 

undwenn Bedingung Hintergrundfarbe der Schaltfläche

 buttons[2][2].setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      buttons[2][2].setBackgroundDrawable(new PaintDrawable(Color.YELLOW)); 
      PaintDrawable drawable = (PaintDrawable) buttons[2][2].getBackground(); 
      color = drawable.getPaint().getColor(); 

     } 
    }); 

i gesetzt Hintergrundfarbe der Schaltfläche haben zu überprüfen, aber wenn ich es überprüfen funktioniert nicht

+0

Ihre Beschreibung erweitern. Was willst du erreichen und was nicht? – Simulant

+0

Hintergrundfarbe der Schaltfläche ist erfolgreich eingestellt, aber jetzt möchte ich mit, wenn Bedingung, welche Schaltfläche ist farbig erkennen. Die If-Bedingung, die ich verwende funktioniert nicht – Heavenly

Antwort

0

Wenn Sie sicher, dass Hintergrund Ressource ist eine Farbe das können Sie verwenden:

ColorDrawable buttonColor = (ColorDrawable) button.getBackground(); 
int colorValue = buttonColor.getColor(); 

Wenn Ihr Zweck ist, den aktuellen Wert der Hintergrundfarbe zu erhalten, dann Sie können den Farbwert als Tag in Button festlegen.

String colorValue = "#....." 
button.setTag(colorValue); 

Und dann den Tag erhalten:

String colorCode = (String)buton.getTag(); 
+0

Dies ist nicht das Problem. Ich habe die Farbe der Schaltfläche richtig eingestellt, aber wenn ich überprüfe, welche Schaltfläche farbig ist, funktioniert diese If-Bedingung nicht – Heavenly

Verwandte Themen