Nie je možné získať tlačidlo farba pozadia

0

Otázka

Snažím sa získať aktuálne farbu pozadia tlačidlo z randomizovanej paletu farieb. Avšak, moja aplikácia je vždy zrútilo, keď sa snažím nasledujúci kód.

int activeColor = ((ColorDrawable)color1.getBackground()).getColor();

Vždy som si toto chybové hlásenie.

    Process: com.boredgiant.chora, PID: 17418
    java.lang.ClassCastException: android.graphics.drawable.RippleDrawable cannot be cast to android.graphics.drawable.ColorDrawable
        at com.boredgiant.chora.DrawActivity$103.onClick(DrawActivity.java:850)
        at android.view.View.performClick(View.java:6314)
        at com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:1119)
        at android.view.View$PerformClick.run(View.java:24793)
        at android.os.Handler.handleCallback(Handler.java:790)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6543)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:440)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:810)
android background button colors
2021-11-24 06:08:05
1

Najlepšiu odpoveď

0

Potrebujete odovzdať ho RippleDrawable

int activeColor = ((RippleDrawable)color1.getBackground()).getColorStateList().getDefaultColor();
2021-11-24 06:18:14

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................