zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

Android 10.0横屏旋转开机动画显示不全的解决方案

Android动画解决方案 显示 开机 旋转 10.0 不全
2023-09-14 09:05:08 时间

1.概述

在10.0的产品进行平板设备开发中,需要横屏显示,所以需要把屏幕方向旋转90,作为横屏显示,但是这样可能会引起一个问题 就是开机动画显示不全,就是虽然画面是横屏显示了 但是只能显示一部分显示不全

2.横屏旋转开机动画显示不全的解决方案的核心类

frameworks\native\services\surfaceflinger\DisplayDevice.cpp

3.横屏旋转开机动画显示不全的解决方案的核心功能分析和实现

功能分析
android显示系统的核心是surfaceflinger,它为所有的应用程序提供显示服务显示的翻转和旋转也是由surfaceflinger完成的,所以分析下surfaceflinger的旋转流程
surfaceflinger启动后首先进行初始化操作,设置surfaceflinger的相关属性并创建了DisplayDevice对象
所以重点看DisplayDevice.cpp的源码
路径:frameworks\native\services\surfaceflinger\DisplayDevice.cpp

DisplayDevice::DisplayDevice(DisplayDeviceCreationArgs&