Cette question a été répondue avant... Hauteur de la barre d'état?
Mise à jour::
Méthode actuelle:
d'accord, la hauteur de la barre d'état dépend de la taille de l'écran, par exemple dans un appareil avec une taille d'écran de 240 X 320 la hauteur de la barre d'état est de 20px, pour un appareil avec une taille d'écran de 320 X 480 la hauteur de la barre d'état est de 25px, pour un appareil avec une taille d'écran de 480 x 800 la hauteur de la barre d'état doit être de 38px
je recommande donc d'utiliser ce script pour obtenir la hauteur de la barre d'état
Rect rectangle = new Rect();
Window window = getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectangle);
int statusBarHeight = rectangle.top;
int contentViewTop =
window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight= contentViewTop - statusBarHeight;
Log.i("*** Elenasys :: ", "Hauteur de la barre d'état = " + statusBarHeight + " , Hauteur de la barre de titre = " + titleBarHeight);
(Ancienne méthode) pour obtenir la hauteur de la barre d'état sur la méthode onCreate()
de votre Activité, utilisez cette méthode:
public int getStatusBarHeight() {
int result = 0;
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = getResources().getDimensionPixelSize(resourceId);
}
return result;
}
0 votes
Si vous effectuez un fondu enchaîné, vous n'aurez pas besoin de connaître la hauteur de la barre d'état.
2 votes
J'en ai besoin car certains éléments sont centrés dans la mise en page, et je voudrais qu'ils se fondent les uns dans les autres.