我有这个要求,我想在一定数量的刻度后更改显示的方向,即使我的应用程序不在前景中,也可能会发生这种情况。
我该怎么做?
我环顾四周,发现WindowManagerService.java有一个“setRotation”API
我根植了我的应用程序,但即使是现在我甚至在主屏幕上也看不到任何变化..请任何帮助
这就是我调用API的方式。
private IWindowManager iwm;
iwm = IWindowManager.Stub.asInterface(ServiceManager.getService("window"));
iwm.setRotation(orent,true,0)
请注意“orent”的值从0到3循环(第一次调用0然后调用1然后调整2 ....)我仍然看不到方向的任何变化。 是否有一些非技术问题,如设置等,或者我不是正确的API?我正在使用Froyo代码库
答案 0 :(得分:0)
如果活动的UI不在前台,则更改活动的UI是没有意义的。如果方向更改是基于时间的,则应该很容易计算当活动返回到前景时您的活动应该处于哪个方向。只需在onResume
中添加一些逻辑,然后加载正确的布局。