Dans mon application, chaque fois que l'orientation de mon écran change, je veux afficher différentes images qui correspondent à l'écran. Comment puis je faire ça?Images de différentes tailles pour différentes orientations android
Merci d'avance.
Dans mon application, chaque fois que l'orientation de mon écran change, je veux afficher différentes images qui correspondent à l'écran. Comment puis je faire ça?Images de différentes tailles pour différentes orientations android
Merci d'avance.
Implémentez la méthode onConfigurationChanged dans votre Activity, vous pouvez y vérifier l'orientation et modifier l'aspect de l'interface utilisateur.
Le paramètre: newConfig.orientation vous indiquera l'orientation actuelle.
Essayez quelque chose comme:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
ImageView header = (ImageView) this.findViewById(R.id.header);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
header.setImageResource(R.drawable.header480);
}
else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
header.setImageResource(R.drawable.header320);
}
}
Vous pouvez également utiliser ce genre de code pour obtenir effectivement la taille de l'écran en temps réel:
affichage display = ((WindowManager) getSystemService (Context.WINDOW_SERVICE)) .getDefaultDisplay(); int width = display.getWidth();
...
C'est bien, mais si vous avez une image dans l'en-tête avec des tailles différentes pour le paysage et le portrait, mais ont le même nom? – Maxrunner