iOS iPhone X适配HomeIndicator相关实践

1. 隐藏HomeIndicator
一般情况只有视频全屏播放和游戏界面需要设置自动隐藏Home键指示器,隐藏HomeIndicator的方法,如下,

1
2
3
- (BOOL)prefersHomeIndicatorAutoHidden {
return YES;
}

在VC 里边重写 prefersHomeIndicatorAutoHidden 返回 YES(默认是NO),Home指示条就能自动隐藏了,此方法是在控制器push之后就会回调,屏幕若无交互事件响应时,延迟2秒左右会自动隐藏。经过测试发现,只要触摸页面就会重新出现,不操作页面一会儿会自动消失。主要适用于视频类等长时间不对页面做出交互的应用使用。

2. 屏幕边缘手势冲突
有时候你的App需要控制从状态栏下拉或者底部栏上滑,这个会跟系统的下拉通知中心手势和上滑控制中心手势冲突。如果你要优先自己处理手势可以将系统手势延迟。方法如下:

1
2
3
- (UIRectEdge)preferredScreenEdgesDeferringSystemGestures{
return UIRectEdgeAll;
}

然后其他地方不要修改(比如prefersHomeIndicatorAutoHidden);就可以像王者荣耀那样,一直显示白条,但是点击一次不会到桌面,也不会到多任务

-------------本文结束感谢您的阅读-------------
最近的文章

iOS和Unity交互之参数传递

1. 调用方法一 Unity调方法传参,有返回值1234// Unity代码[DllImport("__Internal")]// 给iOS传string参数,有返回值,返回值通过iOS的return方法返回给Unityprivate s …

继续阅读
更早的文章

iOS Xcode 添加调试真机设备和模拟器

高版本Xcode调试低版本真机设备 前往文件夹或者找到Xcode安装包右键显示包内容查找路径1/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform …

继续阅读