Au moment de l'exécution, vous savez quel style vous voulez que votre bouton ait. Donc, au préalable, en xml dans le dossier de mise en page, vous pouvez avoir tous les boutons prêts à l'emploi avec les styles dont vous avez besoin. Ainsi, dans le dossier layout, vous pourriez avoir un fichier nommé: button_style_1.xml. Le contenu de ce fichier pourrait ressembler à:
<?xml version="1.0" encoding="utf-8"?>
<Button
android:id="@+id/styleOneButton"
style="@style/FirstStyle" />
Si vous travaillez avec des fragments, dans onCreateView, vous gonflez ce bouton, comme:
Button firstStyleBtn = (Button) inflater.inflate(R.layout.button_style_1, container, false);
où container est le conteneur ViewGroup associé à la méthode onCreateView que vous remplacez lors de la création de votre fragment.
Besoin de deux autres boutons? Vous les créez comme ceci:
Button secondFirstStyleBtn = (Button) inflater.inflate(R.layout.button_style_1, container, false);
Button thirdFirstStyleBtn = (Button) inflater.inflate(R.layout.button_style_1, container, false);
Vous pouvez personnaliser ces boutons:
secondFirstStyleBtn.setText("My Second");
thirdFirstStyleBtn.setText("My Third");
Ensuite, vous ajoutez vos boutons personnalisés et stylisés au conteneur de disposition que vous avez également gonflé dans la méthode onCreateView:
_stylizedButtonsContainer = (LinearLayout) rootView.findViewById(R.id.stylizedButtonsContainer);
_stylizedButtonsContainer.addView(firstStyleBtn);
_stylizedButtonsContainer.addView(secondFirstStyleBtn);
_stylizedButtonsContainer.addView(thirdFirstStyleBtn);
Et c'est ainsi que vous pouvez travailler dynamiquement avec des boutons stylisés.