| | |
| | | package com.hdl.photovoltaic.base; |
| | | |
| | | |
| | | import android.content.Context; |
| | | import android.os.Bundle; |
| | | import android.view.View; |
| | | |
| | | import androidx.annotation.Nullable; |
| | | |
| | | import com.hdl.photovoltaic.R; |
| | | import com.hdl.photovoltaic.utils.LocalManageUtil; |
| | | import com.jaeger.library.StatusBarUtil; |
| | | |
| | | import java.util.Locale; |
| | | |
| | | /** |
| | | * 自定义方法,用于实现个性化 |
| | | */ |
| | | public abstract class CustomBaseActivity extends BaseActivity { |
| | | |
| | | @Override |
| | | protected void onCreate(@Nullable Bundle savedInstanceState) { |
| | | super.onCreate(savedInstanceState); |
| | | |
| | | |
| | | } |
| | | |
| | | // 将StatusBar设置为透明 |
| | | public void setStatusBarTranslucent() { |
| | | StatusBarUtil.setTranslucentForImageViewInFragment(this, 0, null); |
| | | StatusBarUtil.setDarkMode(this);//状态栏字体是白色 |
| | | // StatusBarUtil.setLightMode(this);//状态栏字体是黑色 |
| | | } |
| | | |
| | | /** |
| | | * 修改状态栏字体颜色(黑色,白色) |
| | | */ |
| | | public void setStatusBarTextColor() { |
| | | // View.SYSTEM_UI_FLAG_HIDE_NAVIGATION, //隐藏导航栏 |
| | | // View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, |
| | | // View.SYSTEM_UI_LAYOUT_FLAGS, |
| | | // View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN, //全屏,状态栏会盖在布局上 |
| | | // View.SYSTEM_UI_FLAG_FULLSCREEN, //全屏,状态栏和导航栏不显示 |
| | | // View.SYSTEM_UI_FLAG_VISIBLE, //显示状态栏和导航栏 |
| | | // View.SYSTEM_UI_FLAG_LAYOUT_STABLE,// 保持View Layout不变,隐藏状态栏或者导航栏后,View不会拉伸。 |
| | | // View.SYSTEM_UI_FLAG_LOW_PROFILE,//状态栏:低能显示状态,状态栏上一些图标显示会被隐藏。 |
| | | // View.SYSTEM_UI_FLAG_IMMERSIVE//只有当设置了SYSTEM_UI_FLAG_HIDE_NAVIGATION才起作用。如果没有设置,任意的View相互动作都退出SYSTEM_UI_FLAG_HIDE_NAVIGATION模式。如果设置就不会退出。 |
| | | // View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY//只有当设置了SYSTEM_UI_FLAG_FULLSCREEN | SYSTEM_UI_FLAG_HIDE_NAVIGATION 时起作用。如果没有设置,任意的View相互动作都退出SYSTEM_UI_FLAG_FULLSCREEN | SYSTEM_UI_FLAG_HIDE_NAVIGATION模式。 |
| | | |
| | | |
| | | getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); |
| | | // getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); |
| | | } |
| | | |
| | | /** |
| | | * 设置通知栏背景颜色 |
| | | * |
| | | * @param color 颜色值(0=蓝色;1=白色;2=透明;) |
| | | */ |
| | | public void setNotificationBarBackgroundColor(CustomColor color) { |
| | | switch (color) { |
| | | case blue: { |
| | | getWindow().setStatusBarColor(getColor(R.color.text_245EC3)); |
| | | break; |
| | | } |
| | | case white: { |
| | | // getWindow().setStatusBarColor(getColor(R.color.text_FFFFFFFF)); |
| | | getWindow().setStatusBarColor(getColor(R.color.text_FFECECEC)); |
| | | break; |
| | | } |
| | | case transparent: { |
| | | getWindow().setStatusBarColor(getColor(R.color.text_00000000)); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | public enum CustomColor { |
| | | blue,//蓝色 |
| | | white,//白色 |
| | | transparent,//透明 |
| | | |
| | | |
| | | } |
| | | } |