2013-03-06 93 views
0

因此,我試圖獲得手機屏幕的實際大小,以居中一堆菜單按鈕。在我的薑餅手機,它工作正常,但在傑利貝恩模擬器這一切都錯了...獲取實際的窗口寬度android

WindowManager wm = (WindowManager) Assets.context.getSystemService(Context.WINDOW_SERVICE); 
    Display display = wm.getDefaultDisplay(); 
    try{ 
     Point size = new Point(); 
     display.getSize(size); 
     screenHeight = size.y; 
     screenWidth = size.x; 
    }catch(NoSuchMethodError e){ 
     //API lower than 12, revert to deprecated methods 
     screenWidth = display.getWidth(); 
     screenHeight = display.getHeight(); 
    }*/ 

但後來當我畫畫,例如,一條線在x =屏幕寬度/ 2,對豆形軟糖是隔靴搔癢屏幕中間!這是讓我瘋狂,任何幫助非常感謝:)

回答

1
Display display =getWindowManager().getDefaultDisplay(); 

try{ 

    screenHeight = display.getHeight();; 
    screenWidth = display.getWidth(); 
}catch(NoSuchMethodError e){ 
    //API lower than 12, revert to deprecated methods 

}*/ 
3

您應該使用DisplayMetrics來代替。試試這個:

DisplayMetrics metrics = Assets.context.getResources().getDisplayMetrics(); 
int widthPixels = metrics.widthPixels; 
int heightPixels = metrics.heightPixels;