【发布时间】:2021-03-30 06:16:31
【问题描述】:
我有一个奇怪的安卓设备,它没有重力传感器,在那个设备上, 我的“设置方向”功能什么也不做。在所有其他设备上,包括一些 没有传感器,以下工作正常。
Activity act = AndroidNativeUtil.getActivity();
int newo = portrait
? (reverse
? ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT
: ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)
: (reverse
? ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE
: ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
act.setRequestedOrientation(
newo
是否有一些额外的 API 可以锁定屏幕方向?一些 其他应用成功更改屏幕方向。
【问题讨论】:
-
纵向与横向是否不起作用?还是只是纵向/反向纵向?
-
在我的应用程序中,没有发生旋转。使用第 3 方旋转器应用程序,反向横向不起作用,但其他 3 个方向起作用。
-
传感器的存在与方向支持无关。默认的 android 屏幕有 3 个轴映射到显示面板/设备主体。
setRequestedOrientation()应该可以工作,除非设备的制造商提供了这个 API 的非常糟糕的实现。 -
您是否检查过该设备的方向是否已锁定?那可能是一个永远不会改变方向的设备(如果有类似的东西)?看看这个:stackoverflow.com/questions/34636464/…
-
您也可以查看“Paul”的答案,他描述了不同 API 版本的不同方向常量:stackoverflow.com/questions/18268218/…
标签: android orientation sensors