GetRotation()返回三星Galaxy P1000(4.1 Jelly Bean)和Samsung Galaxy



我正在使用getRotation函数来检测创建活动时屏幕的初始旋转。但是,当我曾经记录返回此功能的内容时,我提到在p1000上,当旋转= 1或3时,这意味着我的平板电脑处于景观中。但是在我的10.1选项卡上,当旋转= 0或2时,这意味着我的平板电脑处于景观中。这使我在背景图像使用情况下置换了问题。这是我的代码:

HomeBackground = (ImageView) findViewById(R.id.home_background);
    Display display = ((WindowManager) this.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
    int rotation = display.getRotation();
        if (rotation == 1 || rotation == 3) {
        HomeBackground.setBackgroundResource(R.drawable.home_bg_landscape);
    } else {
        HomeBackground.setBackgroundResource(R.drawable.home_bg_portrait);
    }

那么,使用另一种方法检测屏幕的初始旋转的解决方案是什么?还是我的错误?谢谢。

来自 Display.getRotation()的文档:

从其"自然"方向返回屏幕的旋转。

Galaxy Tab 10.1的自然取向是景观,我假设另一个设备是肖像。

此答案可能有助于确定什么是默认方向

最新更新