- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
getRotation
始终返回零,无论屏幕朝向哪个方向。我在运行 2.3 的真实设备上运行它。有什么理由吗?
Display display = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
int rotation = display.getRotation();
最佳答案
getRotation 仅在应用具有 UI 并且允许 UI 旋转时才有效。操作系统有一个设置可以防止任何应用程序自动旋转:
设置 > 显示 > 自动旋转屏幕
这必须启用。在我的设备上它被禁用了。尽管如此,有关 getRotation 的 Android 文档不仅没有指出这一点,甚至还假设即使没有 UI,getRotation 也会返回旋转。你需要一个用户界面。对于没有 UI 但出于与用户交互无关的目的需要知道设备方向的服务之类的服务,这当然是一个问题。就个人而言,我一直被谷歌激怒,因为谷歌雇佣了业余程序员,他们认为访问硬件功能几乎总是需要某种用户界面。这种问题在很多场合都出现过,比如必须有一个 SurfaceView 才能录制视频。
最后,应用程序显然不需要 getRotation 来确定设备是否旋转了 0、90、180 或 270 度。关闭自动旋转屏幕后,默认相机应用程序仍然能够计算出角度旋转,因此它不能来自 getRotation,除非它能够以某种方式打开自动旋转屏幕设置。
关于android - getRotation 始终返回零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14626066/
getRotation 始终返回零,无论屏幕朝向哪个方向。我在运行 2.3 的真实设备上运行它。有什么理由吗? Display display = ((WindowManager) context.
我有一个问题,它真的让我头疼。我只想做一个非常简单的任务,确定屏幕的旋转。现在 Display.getRotation() 正是这样做的。 http://developer.android.com/r
我试图在从自定义相机 Activity 拍摄照片时获取设备方向。以前,我到处检查如何实现它,并没有得到人们建议的解决方案的结果。 我使用这行代码检索方向但没有结果。它总是返回 1。如果有帮助,我使用三
连结 4。 我专门用System.out.println在LogCat上打印旋转,观察我旋转设备时的值。 int orientation_photo = ((WindowManager) mConte
OrientationEventListener.onOrientationChanged报告的学位之间有什么关系?和 WindowManager().getDefaultDisplay().getR
我正在努力让我的应用永远不会进入纵向模式,但能够在 2 个横向屏幕 View 之间切换。我知道这可以在 Gingerbread (2.3) 中轻松完成,但我无法为其他版本的 android 手动执行此
我正在使用 Display.getRotation() 并在我的 onCreate() 方法中简单地显示带有 toast 消息的旋转,因为每次旋转屏幕时都会调用 onCreate()。 无论如何,我发
除了 Display.getOrientation() 已弃用之外,Display.getRotation() 和 Display.getOrientation() 之间还有什么区别? 是否都返回等于
我是一名优秀的程序员,十分优秀!