繁体   English   中英

如何确定主屏幕的方向

[英]How to determine orientation of home screen

有没有办法以编程方式确定主屏幕的方向? 我玩弄了以下内容:

WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
int rotation = windowManager.getDefaultDisplay().getRotation();

Resources r = context.getResources();
int orientation = r.getConfiguration().orientation;

但是,这两种方法似乎都不适合,因为据我所知,即使屏幕方向发生变化,主屏幕也很可能锁定在特定的方向上。 最值得注意的是,类似手机的设备似乎以纵向锁定,而平板电脑屏幕似乎具有可旋转的主屏幕,尽管也可以将其锁定。

基本上,我需要信息以便正确更新主屏幕小部件(如果是纵向,则使用OPTION_APPWIDGET_MIN_WIDTHOPTION_APPWIDGET_MAX_HEIGHT确定其宽度和高度)。 但是,如果在窗口小部件在后台更新时屏幕恰好是横向的,则显示宽度和高度的方向错误,因为主屏幕实际上是纵向的。

有什么方法可以可靠地获得主屏幕方向吗?

有没有办法以编程方式确定主屏幕的方向?

不可以。主屏幕的作者可以执行作者想要执行的任何操作。 众所周知,事物显示在对角线上。 并且,由于有数百甚至数千个主屏幕实现,因此任何给定设备上的行为都是不确定的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM