获取手机的实际方向
我需要确定正在运行我的应用程序的手机的实际方向,我找不到任何方法来执行此操作。我找到了“getRequestedOrientation”函数,但它仅检索由“setRequestedOrientation”函数设置的方向。获取手机的实际方向
在我的应用程序中,我让手机根据其物理方向选择方向。而且我有一些自定义取决于结果。
我该怎么办?
在此先感谢您花费时间来帮助我。
它真的要得到当前的定位。
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
int orientation = display.getOrientation();
更简单但是... getResources()。getConfiguration()。orientation –
这个答案让我在路上但“getSystemService”返回一个空的句柄。我已经使用“getWindowManager”来代替它并且它可以工作。 – Zelig
根据这两个问题:
你可以使用:
Activity.getResources().getConfiguration().orientation
据对第二个问题,H评论但是,此值仅返回风景 或肖像。如果您还需要反向定位,我会建议查询加速度计 值以检测差异。不过,我并不熟悉Android和加速度计,足以说明如何完全做到这一点。
相似的问题:http://stackoverflow.com/questions/2795833/check-orientation-on-android-phone –