SebastianE
- Forum-Beiträge: 37
08.03.2012, 11:41:22 via Website
08.03.2012 11:41:22 via Website
Hallo,
auf meiner Suche im Web nach Möglichkeiten die Oberfläche eines Buttons farbig zu gestalten bin ich neben der XML Lösung auf den PorterDuff Mode gestoßen.
Der PorterDuff Mode funktioniert auch soweit ganz gut. Problem dabei ist, wenn der Button gedrückt wird sollte man erkennen das er gedrückt wird wie man das eben von Windows kennt. Die Farbe wird z.B. abgedunkelt.
Beim PorterDuff Mode funktioniert das irgndwie nicht immer bei jeder Farbe.
Bei Rot wird der Button im Zustand "pressed" hellrot.
Bei Grün wird der Button im Zustand "pressed" dunkelgrün.
Bei Schwarz tut sich gar nix.
myButton0.getBackground().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);//Grün
myButton1.getBackground().setColorFilter(0xFFFF0000, PorterDuff.Mode.MULTIPLY);//Rot
myButton2.getBackground().setColorFilter(0xFF000000, PorterDuff.Mode.MULTIPLY);//Schwarz
Weiß jemand wie man das einheitlich machen könnte, also z.B. bei "pressed" wird der Button heller?
Wieso tut sich bei schwarz gar nix? Ich vermute mal das er bei schwarz im Zustand "pressed" dunkler wird und das sieht man halt nicht weil dunkler geht ja nicht mehr. Kann man das irgenwie so ändern das er heller anstatt dunkler würde?
Vieleicht kennt ja jemand die Problematik und hat bessere Lösungen dafür gefunden. Ich bin mir etwas unsicher welche Lösung jetzt die geeignetere ist. Mein Layout hat eine Scrollview mit 37 Buttons.
Würde mich über Tips, Infos oder Links sehr freuen.
Vielen Dank,
SebastianE
auf meiner Suche im Web nach Möglichkeiten die Oberfläche eines Buttons farbig zu gestalten bin ich neben der XML Lösung auf den PorterDuff Mode gestoßen.
Der PorterDuff Mode funktioniert auch soweit ganz gut. Problem dabei ist, wenn der Button gedrückt wird sollte man erkennen das er gedrückt wird wie man das eben von Windows kennt. Die Farbe wird z.B. abgedunkelt.
Beim PorterDuff Mode funktioniert das irgndwie nicht immer bei jeder Farbe.
Bei Rot wird der Button im Zustand "pressed" hellrot.
Bei Grün wird der Button im Zustand "pressed" dunkelgrün.
Bei Schwarz tut sich gar nix.
myButton0.getBackground().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);//Grün
myButton1.getBackground().setColorFilter(0xFFFF0000, PorterDuff.Mode.MULTIPLY);//Rot
myButton2.getBackground().setColorFilter(0xFF000000, PorterDuff.Mode.MULTIPLY);//Schwarz
Weiß jemand wie man das einheitlich machen könnte, also z.B. bei "pressed" wird der Button heller?
Wieso tut sich bei schwarz gar nix? Ich vermute mal das er bei schwarz im Zustand "pressed" dunkler wird und das sieht man halt nicht weil dunkler geht ja nicht mehr. Kann man das irgenwie so ändern das er heller anstatt dunkler würde?
Vieleicht kennt ja jemand die Problematik und hat bessere Lösungen dafür gefunden. Ich bin mir etwas unsicher welche Lösung jetzt die geeignetere ist. Mein Layout hat eine Scrollview mit 37 Buttons.
Würde mich über Tips, Infos oder Links sehr freuen.
Vielen Dank,
SebastianE
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.