码迷,mamicode.com
首页 > 移动开发 > 详细

在onWindowFocusChanged方法中获取手机屏幕的高宽

时间:2015-04-29 15:08:10      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:android开发   手机   屏幕尺寸   

     开发时,我们时常要获取手机屏幕的高宽数据。通常我们会写个获取方法如getScreen();然后在Oncreate()中调用getScreen()方法。我们可能获取到的结果是宽高为0。这是为什么呢?原因在于:

     在Activity生命周期中,onCreate,onStart, onResume都不是真正屏幕可见(VISIBLE)时间点,真正的VISIBLE时间点是在当onWindowFocusChanged()函数被执行时,此时用户才真正地可以与应用进行交互,而这函数被调用之前,用户的操作都有一点限制。所以我们要正确获取到手机屏幕的宽高,是要在onWindowFocusChanged()方法中来执行。

@Override
public void onWindowFocusChanged(boolean hasFocus) {
int width=getResources().getDisplayMetrics().widthPixels;//屏幕宽度
int hight=getResources().getDisplayMetrics().heightPixels;//屏幕高度
super.onWindowFocusChanged(hasFocus);
}

 

在onWindowFocusChanged方法中获取手机屏幕的高宽

标签:android开发   手机   屏幕尺寸   

原文地址:http://blog.csdn.net/true100/article/details/45366025

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!