Android のステータス バーの高さはどれくらいですか? 常に同じですか?
私の測定では 25dp のようですが、すべてのプラットフォームで同じ高さになるかどうかはわかりません。
(ステータス バーのないアクティビティからステータス バーのあるアクティビティへのフェード トランジションを適切に実装するために、これを知りたいです)
ベストアンサー1
この質問は以前に回答されています...ステータスバーの高さは?
アップデート::
現在の方法:
ステータスバーの高さは画面サイズによって異なります。たとえば、画面サイズが 240 x 320 のデバイスではステータスバーの高さは 20 ピクセル、画面サイズが 320 x 480 のデバイスではステータスバーの高さは 25 ピクセル、画面サイズが 480 x 800 のデバイスではステータスバーの高さは 38 ピクセルになります。
ステータスバーの高さを取得するには、このスクリプトを使用することをお勧めします。
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 :: ", "StatusBar Height= " + statusBarHeight + " , TitleBar Height = " + titleBarHeight);
onCreate()
(古い方法)アクティビティのメソッドでステータス バーの高さを取得するには、次の方法を使用します。
public int getStatusBarHeight() {
int result = 0;
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = getResources().getDimensionPixelSize(resourceId);
}
return result;
}