2017-03-12 1 views
0

I 3 Tasten haben, die mit weißen Hintergrund und Radius von 20GradientDrawable in android

Meine GradientDrawable Funktion

private GradientDrawable imageButtonGradient() { 
     GradientDrawable buttonShape = new GradientDrawable(); 
     buttonShape.setCornerRadius(20); 
     buttonShape.setColor(Color.WHITE); 
     return buttonShape; 
    } 

i die Funktion haben muss anrufen und legen Sie den Hintergrund

GradientDrawable buttonGradient = imageButtonGradient(); captureImageButton.setBackground(buttonGradient);

Ich kann es erfassen Schaltfläche sehen, wie ich es brauche

works as required

aber wenn ich die Gradienten für die Back und Absenden-Button

doesn't work

ich die gleiche Funktion für GradientDrawable verwenden. Auf die gleiche Weise die Funktion aufrufen. Ich benutze es wie folgt

captureImageButton.setBackground(buttonGradient); 
backButton.setBackground(buttonGradient); 
submitButton.setBackground(buttonGradient); 

Wie gezeigt, wurden die Zurück-Taste und Absenden-Taste beide gerundet. So funktioniert es, aber ich bin nur nicht sicher, warum der CaptureImageButton zeigt nicht die volle weiße Farbe, wie es sollte.

Irgendwelche Vorschläge?

Antwort

0

Gefunden Lösung für dieses,

aus irgendeinem Grund, den ich zweimal GradientDrawable Funktion aufrufen müssen, einmal für den Rücken und Submit-Button und einmal für die Aufnahme-Taste.

GradientDrawable buttonGradient = imageButtonGradient(); 
GradientDrawable captureButtonGradient = imageButtonGradient(); 

und als der Hintergrund als

folgende sowieso
captureImageButton.setBackground(captureButtonGradient); 
backButton.setBackground(buttonGradient); 
submitButton.setBackground(buttonGradient); 

Dank.

Verwandte Themen