Comment puis-je définir la couleur d'arrière-plan d'une activité sur blanc par programme?
128
Comment puis-je définir la couleur d'arrière-plan d'une activité sur blanc par programme?
Obtenez une poignée de la disposition racine utilisée, puis définissez la couleur d'arrière-plan dessus. La disposition racine est ce que vous avez appelé setContentView avec.
setContentView(R.layout.main);
// Now get a handle to any View contained
// within the main layout you are using
View someView = findViewById(R.id.randomViewInMainLayout);
// Find the root view
View root = someView.getRootView();
// Set the color
root.setBackgroundColor(getResources().getColor(android.R.color.red));
root.setBackgroundColor(getResources().getColor(android.R.color.red));
Ajoutez cette seule ligne dans votre activité, après
setContentView()
appella source
Je préfère la coloration par thème
la source
android:windowBackground
est visible en premier, pendant un bref instant, puis la couleur d'arrière-plan de la mise en page prend le dessus. Donc, si vous utilisez deux couleurs différentes, cela clignotera sur l'écran.windowBackground
n'affecte que l'arrière-plan de la fenêtre, maiscolorBackground
affecte également toutes les vues. stackoverflow.com/questions/26266221/…En d'autres termes, "android: background" est la balise du XML que vous souhaitez modifier.
Si vous devez mettre à jour dynamiquement la valeur d'arrière-plan, consultez les éléments suivants:
Exercice: changer la couleur d'arrière-plan, par SeekBar
la source
Dans votre
onCreate()
méthode:Vous devez également ajouter au dossier des valeurs un nouveau fichier XML appelé
color.xml
et y attribuer une nouvelle propriété de couleur:color.xml:
Notez que vous pouvez nommer le
color.xml
nom de votre choix, mais vous y faites référence par code commeR.color.yourId
.ÉDITER
Parce que
getResources().getColor()
c'est obsolète, utilisez à lagetWindow().getDecorView().setBackgroundColor(ContextCompat.getColor(MainActivity.this, R.color.main_activity_background_color));
place.la source
Vous pouvez l'utiliser pour appeler des couleurs Android prédéfinies:
Si vous souhaitez utiliser l'une de vos propres couleurs personnalisées, vous pouvez ajouter votre couleur personnalisée à strings.xml, puis utiliser ce qui suit pour l'appeler.
Cependant, si vous souhaitez définir la couleur dans votre layout.xml, vous pouvez modifier et ajouter ce qui suit à tout élément qui l'accepte.
la source
Pour obtenir la vue racine définie dans votre fichier xml, sans barre d'action, vous pouvez utiliser ceci:
Donc, pour changer la couleur en blanc:
la source
travaillé pour moi. Merci.
la source
la source
la source