Androidデバイスでステータスバーの色をtargetSdkVersion
19以上に設定したいとします。 Lollipop(21)以降のバージョンでは、このコード行をうまく使いました。getWindow().setStatusBarColor(ContextCompat.getColor(getApplicationContext(), R.color.colorPrimaryDark));
を使用してステータスバーの色をアプリケーションのcolorPrimary
に設定しました。しかし、SDKバージョン19以降でこのAPIを使用しようとすると、バージョン21を使用する必要があることがわかりました。その結果、調べて、How to change the status bar color in androidが問題を解決しますが、 (上記のリンクからの引用)次のコードAndroid KitKatバージョンのフェードカラーのステータスバー?
public static void setTaskBarColored(Activity context) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT)
{
Window w = context.getWindow();
w.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
//status bar height
int statusBarHeight = Utilities.getStatusBarHeight(context);
View view = new View(context);
view.setLayoutParams(new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
view.getLayoutParams().height = statusBarHeight;
((ViewGroup) w.getDecorView()).addView(view);
view.setBackgroundColor(context.getResources().getColor(R.color.colorPrimaryTaskBar));
}
}
は、ステータスバーの色が設定されているが、それは一種の私はそれを持っていることを期待colorPrimary
に黒からフェード。全体的に私はステータスバーの色をcolorPrimary
にフェードするのではなく、colorPrimary
にすることをお勧めします。 KitKatをダウンロードしたアンドロイドデバイスのステータスバーをcolorPrimary
にする方法はありますか?または、アンドロイドのKitKatステータスバーが黒からcolorPrimaryにフェードする理由はありますか?いずれかの答えが役に立ちます。ありがとう!