Bouton Image changer par programmation?

J’essaie de changer l’image de ImageButton par programmation.

J’essaie de copier ce code, mais setBackgroundDrawable est déjà obsolète.

public void giveClue(View view) { Drawable replacer = getResources().getDrawable(R.drawable.icon2); ((ImageButton) view).setEnabled(false); ((ImageButton) view).setBackgroundDrawable(replacer); gameAdapter.giveClue(game); } 

Mon bouton a été créé en utilisant xml comme suit:

   

S’il vous plaît aider.

Je vous remercie.

    votre code essaie de changer l’arrière-plan du bouton. pas son image. Ce sont deux choses différentes

      ((ImageButton) view).setImageResource(R.drawable.icon2); 

    Essayez ceci pour moi, changez l’image de fond par programmation,

      image.setBackgroundResource(R.drawable.ico); 

    Essayez de cette façon:

    ((ImageButton) vue) .setImageDrawable (replacer);

    Bonjour, vous pouvez utiliser le code suivant

     if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN ) { ((ImageButton) view).setImageResource(getResources().getIdentifier("icon2", "drawable", getPackageName())); } else { ((ImageButton) view).setImageDrawable(getDrawable(getResources().getIdentifier("icon2", "drawable", getPackageName()))); } 

    J’espère que ceci vous aidera.

    En utilisant Kotlin, vous pouvez le faire:

     val myImageButton = ImageButton(context).apply({ background = null setImageDrawable(ContextCompat.getDrawable(context, R.drawable.ic_save_black_24px)) }) 

    Essayez ((ImageButton) view).setImageDrawable(replacer);