您的位置:首页 > 其它

如何正确的得到屏幕大小信息?

2013-02-01 16:11 417 查看
http://stackoverflow.com/questions/1016896/android-how-to-get-screen-dimensions

I created some custom elements and I want to programatically place them to the upper right corner (n pixels from the top edge and m pixels from the right edge) therefore I need to get the screen width and screen height and then set position:

int px = screenWidth - m;int py = screenWidth - n;

Does anyone know how to get screenWidth and screenHeight in the main Activity?

Thanks  

If you want the the display dimensions in pixels you can use
getSize
:

Display display = getWindowManager().getDefaultDisplay();Point size =newPoint();
display.getSize(size);int width = size.x;int height = size.y;

If you're not in an
Activity
you can get the default
Display
via
WINDOW_SERVICE
:

WindowManager wm =(WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);Display display = wm.getDefaultDisplay();

Before
getSize
was introduced (in API level 13), you could use the
getWidth
and
getHeight
methods that are now deprecated:

Display display = getWindowManager().getDefaultDisplay();int width = display.getWidth();// deprecatedint height = display.getHeight();// deprecated

For the use case you're describing however a margin/padding in the layout seems more appropriate.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: