2012-09-28 31 views
1

我有下面的代碼來發現屏幕尺寸:的NoSuchMethodError:的getSize

WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE); 
    Point size = new Point(); 
    int measuredWidth = 0; 
    int measuredHeight = 0; 

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { 
     wm.getDefaultDisplay().getSize(size); 

     measuredWidth = size.x; 
     measuredHeight = size.y; 
    } else { 
     Display display = wm.getDefaultDisplay(); 

     measuredWidth = display.getWidth(); 
     measuredHeight = display.getHeight(); 
    } 

在一個星系GIO(2.3.6)這工作,但Galaxy Tab的10.1(3.0)在此崩潰。

wm.getDefaultDisplay().getSize(size); 

在此行中我得到

NoSuchMethodError: android.view.Display.getSize.

我該如何解決這個問題?

回答

2

我已經找到了它,我認爲getSize()方法自從HoneyComb(api 11)後可用,但它實際上僅在自Honeycomb_MR2(api 13)後纔可用。

0

的getSize()是因爲API 13 docs

你可能有一箇舊版本的設備上運行此。

嘗試getHeight()和getWidth()。