標籤:tde itss new flags parent group you manage r.java
StatusBarColorSetter.java
package com.example.buyishi.translucentdemo;import android.app.Activity;import android.content.res.Resources;import android.view.View;import android.view.ViewGroup;import android.view.Window;import android.view.WindowManager;public class StatusBarColorSetter { public static void setStatusBarColor(Activity activity, int color) { Window window = activity.getWindow(); window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); ViewGroup decorView = (ViewGroup) window.getDecorView(); View statusBarView = new View(activity); Resources resources = activity.getResources(); int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android"); int statusBarHeight = resources.getDimensionPixelSize(resourceId); ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, statusBarHeight); statusBarView.setLayoutParams(layoutParams); statusBarView.setBackgroundColor(color); decorView.addView(statusBarView); }}
為避免介面布局向上位移,須在布局根項目中添加android:fitsSystemWindows="true"
Android開發,設定狀態列顏色