Android(安卓)状态栏透明和图标反色
16lz
2022-01-23
public class BaseActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setStatusTransparent(); setDarkStatusIcon(true); } /** * 说明:Android 4.4+ 设置状态栏透明 */ protected void setStatusTransparent() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { // 5.0+ 实现 Window window = getWindow(); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.setStatusBarColor(Color.TRANSPARENT); } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { // 4.4 实现 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); } } /** * 说明:Android 6.0+ 状态栏图标原生反色操作 */ protected void setDarkStatusIcon(boolean dark) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { View decorView = getWindow().getDecorView(); if (decorView == null) return; int vis = decorView.getSystemUiVisibility(); if (dark) { vis |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR; } else { vis &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR; } decorView.setSystemUiVisibility(vis); } }}
更多相关文章
- Android(安卓)ScrollViewy与HorizontalScrollView实现上下左右滚
- android之IntentService类的实现
- Android(安卓)实现程序开机自启动
- android实现余额宝收益播报中数字显示动态效果
- Android(Java):onChange效果实现
- 实现Android图片圆角
- android闹钟(四):实现计时器
- Android中点击事件之CheckedChangeListener实现步骤
- 浅谈Java中Collections.sort对List排序的两种方法