1.如何实现沉浸式状态栏
首先介绍android:这一属性copy,设置为true则状态栏变透明(4.4以上手机),此时不做任何处理会出现如图的2113效果:可以看出标题栏5261将状态栏4102覆盖,很不优雅。
接下来介绍android:fitsSystemWindows这一属性。设置为true让Activity 中setContentView的布局不覆盖状态栏(即相当于给状态栏设置了padding),这1653个属性要在根布局中使用,如果同时设置了
2.win10系统底部任务栏怎么设置
方法/步骤Win10系统桌面右侧显示任务栏恢复到屏幕下方方法一: 1、右键点击任务栏,取消锁定; 2、鼠标按住任务栏,然后拖动到屏幕下方。
3、重新锁定即可。Win10系统桌面右侧显示任务栏恢复到屏幕下方方法二: 1、右击任务栏空白处选择属性; 2、任务栏在屏幕上的位置改为“底部”; 3、然后点击应用、确定即可。
在win10系统中任务栏跑到屏幕右侧并不是什么故障问题,我们可以按照教程提供的两种方法来设置任务栏到屏幕下方,用户可以根据个人操作习惯来设置win10任务栏位置。步骤阅读。
3.如何动态兼容沉浸式状态栏模式
由于各系统版本的限制,沉浸式状态栏对系统有要求(Android4.4及以上、iOS7.0及以上),如果要兼容各系统版本,需要动态判断当前环境是否支持沉浸式状态栏以及系统状态栏的高度:使用5+API- 判断当前环境是否支持沉浸式状态栏plus.navigator.isImmersedStatusbar()如果当前支持沉浸式状态栏则返回true,否则返回false。
- 获取当前系统状态栏高度plus.navigator.getStatusbarHeight()获取系统状态栏高度,Number类型。其单位是逻辑像素值,即css中可直接使用的像素值,可能存在小数点。
实际用法参考HelloH5应用的“plus/doc.html”: // 创建加载内容窗口 var topoffset='45px'; if(plus.navigator.isImmersedStatusbar()){// 兼容immersed状态栏模式 // 获取状态栏高度并根据业务需求处理,这里重新计算了子窗口的偏移位置 topoffset=(Math.round(plus.navigator.getStatusbarHeight())+45)+'px'; } // 使用偏移位置创建子窗口 wc=plus.webview.create(null,'doccontent',{top:topoffset,bottom:'0px',bounce:'vertical',bounceBackground:'#FFFFFF'});通过userAgent判断5+API需要在plusready事件后才能调用,通常此事件在DOM加载渲染后才会触发,无法再渲染前根据不同的状态来设置css。为了解决此问题,在支持5+API运行环境的userAgent中特定字段Html5Plus/1.0后添加Immersed标识,如下:"Html5Plus/1.0 (Immersed/30)"其中Immersed/后的30表示状态栏的高度,单位为逻辑像素值。
可以使用正则表达式进行获取:var immersed = 0;var ms=(/Html5Plus\/.+\s\(.*(Immersed\/(\d+\.?\d*).*)\)/gi).exec(navigator.userAgent);if(ms&&ms.length>=3){ // 当前环境为沉浸式状态栏模式 immersed=parseFloat(ms[2]);// 获取状态栏的高度}immersed值如果大于0则表示当前环境支持沉浸式状态栏。获取状态栏高度后,可以使用js动态修改DOM元素的css属性来设置样式,如设置界面头区域的顶部内边距为状态栏的高度(避免系统状态栏与界面头重叠),示例如下:var t=document.getElementById('header');t&&t.style.paddingTop=immersed+'px';具体项目中可根据界面设计,灵活使用immersed值来动态适配各种效果。
完整用法可参考HelloH5应用中的“js/immersed.js”。
转载请注明出处windows之家 » win10下方设置沉浸式状态栏