设备解锁后JellyBean Newcastle ANDROID 4.1.1屏幕尺寸问题

时间:2012-11-28 07:56:56

标签: android-intent android-4.2-jelly-bean screen-size

我观察到当设备被锁定时活动发生变化时,活动的底部会在解锁设备时被切断。

例如将设备的休眠时间设置为15秒,并编写一个代码,该代码在电话空闲时间20秒后更改活动。现在,如果我将手机闲置21秒并解锁手机,则更改的活动会被切断。我观察到软菜单显示在我的活动底部的活动上。我已经把日志分析并解析了解锁后我的窗口高度为1845,而正常情况下是1701。

我用来获取窗口大小的代码是::

int initialWidth = getWindowManager().getDefaultDisplay().getWidth();
int initialHeight = getWindowManager().getDefaultDisplay().getHeight();
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int statusBarHeight = getDefaultStatusBarHeight(displayMetrics.densityDpi);
Rect screenSize= new Rect();
screenSize.right = initialWidth;
screenSize.bottom = initialHeight - statusBarHeight; //screenSize is what we are using           //to display screen.

//code we are using to get status bar heigth.
private int getDefaultStatusBarHeight(int densityDpi) {
    int statusBarHeight = 0;
    switch (densityDpi) {
    case 120:
        statusBarHeight = 19;
        break;

    case 160:
        statusBarHeight = 25;
        break;

    case 240:
        statusBarHeight = 38;
        break;

    default:
        statusBarHeight = Math.round((float) densityDpi * 25 / 160);
    }
    return statusBarHeight;
}

我在Newcastle ANDROID 4.1.1中遇到了这个问题,它有像ICS设备这样的软菜单栏。

有人遇到同样的问题吗?如果是,那么解决方案是什么?

0 个答案:

没有答案