display display = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)).getDefaultdisplay(); int rotation = display.getRotation();解决方法 getRotation仅在应用程序具有UI且允许UI旋转时才有效. *** 作系统有一个设置可以阻止任何应用程序自动旋转:
设置>显示>自动旋转屏幕
必须启用此功能.在我的设备上它已被禁用.尽管如此,getRotation上的AndroID文档不仅没有指出这一点,甚至还假设即使没有UI,getRotation也会返回旋转.你需要一个UI.这当然是类似于没有UI但需要知道设备方向的服务的问题,其目的与用户交互无关.就我个人而言,我一直很生气,因为招聘那些认为访问硬件功能几乎总是需要某种UI的业余程序员.许多场合都出现了这种问题,比如必须使用SurfaceVIEw来录制视频.
最后,应用程序显然不需要getRotation来确定设备是旋转0度,90度,180度还是270度.在自动旋转屏幕关闭的情况下,默认的相机应用程序仍然可以计算出角度旋转,因此它不能来自getRotation,除非它能够以某种方式启用自动旋转屏幕设置.
总结以上是内存溢出为你收集整理的android – getRotation总是返回零全部内容,希望文章能够帮你解决android – getRotation总是返回零所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)