关于状态栏的那些事
来源:互联网 发布:淘宝联盟怎么分享赚钱 编辑:程序博客网 时间:2024/06/14 12:19
关于状态栏可绕地球3圈
/** * 淡化状态栏和导航栏 * 用户触碰到状态栏或者导航栏时会自动恢复 */ public void danhuaClick(View view) { View decorView = getWindow().getDecorView(); int uiOptions = View.SYSTEM_UI_FLAG_LOW_PROFILE; decorView.setSystemUiVisibility(uiOptions); } /** * 恢复淡化状态 */ public void huifuClick(View view) { View decorView = getWindow().getDecorView(); decorView.setSystemUiVisibility(0); } /** * 隐藏状态栏 * 一旦设置会一直生效 * 用户下拉时会显示状态栏,然后会自动隐藏状态栏 */ public void yincangztlClick(View view) { getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);// // 4.1之后可以动态隐藏状态栏,用户下拉后会恢复,需要重新设置// View decorView = getWindow().getDecorView();// int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;// decorView.setSystemUiVisibility(uiOptions); } /** * 隐藏导航栏和状态栏 * 用户点击后重新显示 */ public void zhuangtaiClick(View view) { //4.0以上 View decorView = getWindow().getDecorView(); int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN; decorView.setSystemUiVisibility(uiOptions); } /** * 非粘性沉浸式模式 * 用户向下滑动恢复,需重新设置才能生效 * 恢复后Actionbar会盖住内容建议隐藏 */ public void feinianClick(View view) { View mDecorView = getWindow().getDecorView(); mDecorView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar | View.SYSTEM_UI_FLAG_IMMERSIVE); } /** * 恢复非粘性沉浸式模式 * 恢复后Actionbar会盖住内容建议隐藏 */ public void huifufeiClick(View view) { View mDecorView = getWindow().getDecorView(); mDecorView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); } /** * 粘性沉浸式模式 * 用户下拉显示状态栏和导航栏 * 一段时间后自动隐藏 */ public void nianxingClick(View view) { View mDecorView = getWindow().getDecorView(); mDecorView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar | View.SYSTEM_UI_FLAG_IMMERSIVE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY ); } /** * 内容穿透状态栏和导航栏 * 为布局设置fitsSystemWindows属性防止内容位移 * 根据具体情况为相应的控件设置此属性 * 当actionbar存在时,谷歌并没有提供一个好的解决方案 * * @param view */ public void chuantouClick(View view) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { // 5.0 // 全透明状态栏 getWindow().setStatusBarColor(Color.parseColor("#00000000")); // 半透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); //透明导航栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); } } @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (hasFocus) { // TODO 当窗口获取到焦点时会执行此方法 Log.e("窗口", "获取焦点"); } }
0 0
- 关于状态栏的那些事
- 关于WAS的那些事....
- 关于foreach的那些事
- 关于成长的那些事
- 关于DOCTYPE的那些事
- 关于爱情的那些事。
- 关于http的那些事
- 关于年终奖的那些事
- 关于 DWR 的那些事
- 关于图片的那些事
- 关于补码的那些事
- 关于JSP的那些事
- 关于前端的那些事
- 关于多线程的那些事
- 关于cvScalar的那些事
- 关于cvAbsDiff的那些事
- 关于开始的那些事
- 那些关于公务员的事
- RxJava懒人专用指南
- 安卓——Dialog详解
- 第十一章 缓存机制——《跟我学Shiro》[张开涛]
- WebRTC学习之六:本地视频采集
- Linux更新源、安装相关包、相关排错
- 关于状态栏的那些事
- android中 Dialog.dismiss()、Dialog.cancel()、和Dialog.hide()的相同点和区别
- Android基于配置文件的测试模式(不修改代码通过配置文件来打开和关闭测试模式)
- MaterialRefreshLayout—比SwipeRefreshLayout更漂亮的下拉
- birt出现异常解决办法
- spark简单操作——map flatmap filter distinct
- 使用mysqlsla分析Mysql数据库日志
- JavaScript中的预解析
- angluar字数自动减少