除了不推荐使用Display.getOrientation()之外,Display.getRotation()和Display.getOrientation()有什么区别?
两者都返回int
等于Surface.ROTATION_0,Surface.ROTATION_90,Surface.ROTATION_180,Surface.ROTATION_270之一吗?
答案 0 :(得分:20)
getRotation()只调用不推荐使用的方法getOrientation(),检查source code of class Display。所以似乎只是因为一个更好的名字而被弃用。
答案 1 :(得分:1)
两种方法完全相同,getRotation()只调用getOrientation()。出于这个原因,我在我的应用程序中使用getOrientation()以添加对较低Android级别的支持。我认为没有理由限制我分发我的应用程序的能力,因此它可以有不同的方法名称。因此,我完全同意jap1968。
答案 2 :(得分:0)
答案就像Android文档一样。很多人都有制造商不更新的设备。当应用程序的主要功能在API v1中甚至不需要任何东西(在我的例子中)时,我发现只为具有现代设备的用户创建一个应用程序是无稽之谈。
答案 3 :(得分:-2)
来自Android开发者网站here:
public int getOrientation()
从:API Level 1此方法是 弃用。使用getRotation()
返回
此显示的方向。
public int getRotation()
自:API Level 8返回 屏幕从它旋转 “自然”的定位。归来了 值可能是Surface.ROTATION_0(没有 旋转),Surface.ROTATION_90, Surface.ROTATION_180,或 Surface.ROTATION_270。例如,如果 设备有一个自然高的屏幕, 并且用户将其转向了侧面 进入景观方向, 这里返回的值可能是 Surface.ROTATION_90或 Surface.ROTATION_270取决于 方向转了。角度是 绘制图形的旋转 屏幕,相反 物理旋转方向 装置。例如,如果设备 旋转90度 逆时针,以补偿 渲染将旋转90 顺时针方向,因此 这里的返回值将是 Surface.ROTATION_90。