Android:控制主屏幕旋转的行为

时间:2015-09-02 10:02:33

标签: android rotation widget homescreen

有没有什么方法可以在设备旋转时实现所需的行为,如下图所示(波浪形的东西是小部件)。很可能这是由发射器控制的,而不是从任何一个应用程序以编程方式控制 - 如果是这样,是否有任何启动器允许这个?

基本上我问的原因是因为我希望小部件的行为如图所示(小部件是我编码的小部件),即使用户也是如此设备设置为在设备旋转时旋转主屏幕。基本上我能看到这个工作的唯一方法是,如果网格布局相对于物理屏幕是固定的,应用程序图标只是在其框内旋转,并且小部件要么为新布局更新其内容,要么只保留以前的内容(以便内容随屏幕一起旋转)。

为了更新小部件内容,有没有办法以编程方式检测屏幕主屏幕旋转(与屏幕旋转不同,因为主屏幕可能不旋转)?即使对于我得到的"这对我来说也很重要。场景,因为当主屏幕旋转时,小部件的宽高比似乎发生了变化,我需要检测到这一点并更新小部件内容以更好地适应。

Behaviour of homescreen on rotation

DFDD

2 个答案:

答案 0 :(得分:1)

使用:

1. layout-sw480dp
2. layout-sw600dp
3. layout-sw720dp

答案 1 :(得分:0)

由于主屏幕(启动器)在实施过程中变化很大,因此您不太可能找到解决方案。许多发射器不支持横向定位,并且期望发射器能够容纳可以在两个不同方向上扩展的小部件,只是过多地询问它们。

对于支持横向方向的发射器,应该免费重新定位小部件,而不需要您付出任何努力。当您的提供商选择布局,设置视图等等时,您可能希望检测窗口小部件的方向(例如通过getResources().getConfiguration().orientation)。