android: modifier dynamiquement FAB(Flottant Bouton d'Action) icône de code
Comment changer FAB icône dans une Activité au cours de l'exécution. J'ai ce code ->
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fabMainActivity);
Je sais que c'est possible à l'aide de fab.setBackgroundDrawable();
mais je suis un novice sur android, ne pas comprendre comment le faire.
Toute aide sera très appréciée.
Grâce
- Avez-vous essayé
fab. setBackground
? - Je ne suis pas en mesure de le faire.. comme il s'attendre à un drawable.. et idk comment faire un drawable ??
- Avez-vous ajouté l'icône dans le dossier Drawable? si oui, alors il suffit de passer
R.drawable.<icon_name>
àsetBackground
méthode sinon d'abord ajouter l'icône de dossier drawable puis de faire de même - en passant
R.drawable.<icon_name>
àfab.setBackgroundDrawable();
donne une erreur...setBackgroundDrawable (android.graphics.drawable.Drawable) in FloatingActionButton can not be applied to (int)
- quelle erreur...?
- Ok le faire aussi:
Drawable drawable = getResources().getDrawable(R.drawable. icon_name); fab .setBackground(dr
awable)l - Oui sa fonctionne, mais
getDrawable
est obsolète,... de l'API de niveau 22 au lieu de cela, nous devrions l'utilisergetDrawable (int id, Resources.Theme theme)
Vous devez vous connecter pour publier un commentaire.
Changer FloatingActionButton source:
Ce peut être remplacé par le code suivant à partir de la bibliothèque de prise en charge à la place:
getApplicationContext
autant que possibleOu l'utilisation de la Bibliothèque de prise en charge:
Si vous utilisez la Bibliothèque de prise en charge:
Supposent que vous utilisez l'image ic_arrow_forward.png fab de l'arrière-plan:
fab.setImageResource(R.mipmap.ic_arrow_forward);
Ce que je suis en utilisant comme suit,