2012-10-19 208 views
0

要设置什么minimum-sdk和target-sdk,以便我们可以检查android版本,并根据android的版本使用getSizez()getWidth()getHeight()。 我目前的最低sdk是8,目标是13屏幕宽度和高度Android

我在做什么目前是

Display display=getWindowManager().getDefaultDisplay(); 

    if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD) 
    { 
     width=display.getWidth(); 
     height=display.getHeight(); 
     // only for android older than gingerbread 
    } 
    else 
    { 
     display.getSize(point); 
     width=point.x; 
     height=point.y; 
     Log.I("Width",Integer.toString(width)); 
     Log.I("Height",Integer.toString(height)); 
    } 

但它给错误在display.getSize(点) 它给人的错误是

The method getSize(Point) is undefined for the type Display.. 

任何形式的帮助将非常感激。

回答

0

当在developer.android.com现场检查,它说,display.getSize(点)仅适用于Android版本13及以上的,所以我会改变您最初的if语句从

如果(建设.VERSION.SDK_INT < = Build.VERSION_CODES.GINGERBREAD)

如果(Build.VERSION.SDK_INT < 13)

+0

如果部分没有给出任何错误@gbotha但误差在显示.getSize()..和thi在那里,我上面提到的错误来了...它的编译时间错误,而不是运行时错误。 – sankettt

+0

这是因为gbotha是正确的,GINGERBREAD!= 13。getSize(point)直到13才存在,这是HONEYCOMB_MR2。 –