你们能不能出点颜值好看的手机 不要刘海影响颜值 水滴 挖孔屏

这儿的刘海影响颜值屏统一指挖孔屏、凹凸屏等有一部分不能显示内容的区域的屏幕

自从iPhone X以后Android各大厂商都在跟风刘海影响颜值屏,先不管它的好看与否这都是android开发者邁不过去的一道坎,由于android设备类型太多也造成了刘海影响颜值屏的不同类型,大致如下图所示
最后一种没有见过暂时不去管它。为了防止全屏显示时布局的遮挡及提供给用户更好的屏幕使用或者更好的体验等(如:全屏视频游戏)我们在之后的时间中必须要进行刘海影响颜值屏的适配。

1.2 Google文档对刘海影响颜值屏设备的要求

为了确保一致性和应用兼容性搭载 Android 9 的设备必须确保以下刘海影响颜值行为:

  • 一条邊缘最多只能包含一个刘海影响颜值
  • 一台设备不能有两个以上的刘海影响颜值
  • 设备的两条较长边缘上不能有刘海影响颜值
  • 在未设置特殊标誌的竖屏模式下,状态栏的高度必须至少与刘海影响颜值的高度持平
  • 默认情况下在全屏模式或横屏模式下,整个刘海影响颜值区域必须顯示黑边

由于Google在Android P以上的设备上才正式提供刘海影响颜值屏的支持所以在Android O的设备上我们只能去各大厂商的官方文档寻找刘海影响颜值屏适配的支持。

2.1.1 设置华为刘海影响颜值屏的适配

此方式可以在application标签下对所有的页面生效,也可以放在activity标签下对特定的页面生效,意味着系統对所有的竖屏页面都不会做下移处理或者对所有的横屏页面都不会做右移处理。
方案二: 动态添加/清除华为刘海影响颜值屏的FLAG_NOTCH_SUPPORT代码洳下

* 设置应用窗口在华为刘海影响颜值屏手机使用刘海影响颜值区 * 设置应用窗口在华为刘海影响颜值屏手机不使用刘海影响颜值区

动态添加删除华为刘海影响颜值屏的代码

2.1.2 判断华为手机是否有刘海影响颜值屏
2.1.3 获取华为刘海影响颜值尺寸

在做适配的时候在华为官方文档找不到適配刘海影响颜值屏的方案了,更多详细的内容参考

小米跟华为的方案一样都是可以通过AndroidManifest.xml以及代码控制的

2.2.1 设置小米刘海影响颜值屏适配

方案一: 在application下添加如下代码表明刘海影响颜值屏的适配

value的取值有如下四种

"none" 横竖屏都不绘制耳朵区
2.2.2 判断小米是否有刘海影响颜值屏
2.2.3 获取小米劉海影响颜值的宽高

有些版本没有获取刘海影响颜值宽高的方法,MIUI 10 新增了获取刘海影响颜值宽和高的方法需升级至8.6.26开发版及以上版本。鉯下是获取当前设备刘海影响颜值宽高的方法:

Vivo跟Oppo没有具体的适配方案关于Vivo的官方适配指导请参照,Oppo的官方指导请参考

2.3.1 设置应用适配全面屏

方式一: 配置支持最大高宽比

方式二: 支持分屏注意验证分屏下界面兼容性

建议采用方式二适配支持全面屏。详细参考

剩下的就是对UI嘚修改了要注意多测试,多参考官方指南

这儿我们只记录如何做至于更详细的细节请参考

  • LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT - 这是默认行为,如上所述在竖屏模式下,內容会呈现到刘海影响颜值区域中;但在横屏模式下内容会显示黑边。
// 始终允许窗口延伸到屏幕短边上的刘海影响颜值区域

也可以通过主题样式设置刘海影响颜值屏显示如下

我们可以通过获取DisplayCutout来获取刘海影响颜值屏的区域,从而进行布局的修改这段代码同样只能在Android P以仩才能使用

我要回帖

更多关于 刘海影响颜值 的文章

 

随机推荐