嘿我有Android应用程序,总是处于纵向模式
除了一个处于横向模式的活动
打开此活动的方法是将我的设备旋转到横向模式
我使用SensorEventListener的后台服务实现了这一点
但是我遇到了很多问题
第一个是SensorEvent返回的值是设备之间的差异
第二个问题是,有时当我长时间旋转设备时,设备屏幕在加载横向视图之前用黑屏旋转了几秒钟
我正在使用此库中的代码来处理方向 rotation sensor code
是实现这一目标的更好方法,感谢黑屏问题的原因是什么
答案 0 :(得分:1)
您无需使用传感器来检测设备旋转 - 系统已经为您执行此操作。
只需在res / layout-land文件夹中提供不同的布局资源文件。 只要您没有做任何强制仅限肖像的操作,Android就会销毁您的活动并在旋转设备时使用新布局重新创建它。
没有“黑屏”瞬间闪现的关键是确保你在onCreate或onCreateView上不做任何耗时的工作。
确保在后台线程上进行长时间运行(超过几百毫秒),并且永远不要在UI线程上进行任何网络访问。