关闭

获取屏幕真实高度包含NavigationBar(底部虚拟按键)

1023人阅读 评论(0) 收藏 举报
分类:
</pre><pre>

public int getScreentHeight() {  
    int heightPixels;  
    WindowManager w = this.getWindowManager();  
    Display d = w.getDefaultDisplay();  
    DisplayMetrics metrics = new DisplayMetrics();  
    d.getMetrics(metrics);  
    // since SDK_INT = 1;  
    heightPixels = metrics.heightPixels;  
    // includes window decorations (statusbar bar/navigation bar)  
    if (Build.VERSION.SDK_INT >= 14 && Build.VERSION.SDK_INT < 17)  
        try {  
            heightPixels = (Integer) Display.class  
                    .getMethod("getRawHeight").invoke(d);  
        } catch (Exception ignored) {  
        }  
    // includes window decorations (statusbar bar/navigation bar)  
    else if (Build.VERSION.SDK_INT >= 17)  
        try {  
            android.graphics.Point realSize = new android.graphics.Point();  
            Display.class.getMethod("getRealSize",  
                    android.graphics.Point.class).invoke(d, realSize);  
            heightPixels = realSize.y;  
        } catch (Exception ignored) {  
        }  
    Log.e("realHightPixels-heightPixels", heightPixels + "width");  
    return heightPixels;  
}  
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:84673次
    • 积分:1651
    • 等级:
    • 排名:千里之外
    • 原创:77篇
    • 转载:37篇
    • 译文:0篇
    • 评论:10条
    最新评论