关闭

Android之获取屏幕和视图高和宽

标签: Android屏幕和视图高和宽
538人阅读 评论(0) 收藏 举报
分类:

在android中,画布Canvas的高宽其实是屏幕的高宽。 

1.

WindowManager windowManager = getWindowManager();   
  
Display display = windowManager.getDefaultDisplay();   
  
screenWidth = display.getWidth();   
  
screenHeight = display.getHeight();  

2

DisplayMetrics dm = new DisplayMetrics();  
  
this.getWindowManager().getDefaultDisplay().getMetrics(dm);//this指当前activity  
  
screenWidth =dm.widthPixels;  
  
screenHeight =dm.heightPixels;  
以上两种方法在屏幕未显示的时候,还是处于0的状态,即要在setContentView调用之后才有效。 


还可以在onDraw中由canvas来获得


viewWidth=this.getWidth();   
  
viewHeight=this.getHeight();  

2.重写view的onSizeChanged,该方法会在onCreate之后,onDraw之前调用 

protected void onSizeChanged(int w, int h, int oldw, int oldh) {   
viewHeight=h;   
viewWidth=w;   
super.onSizeChanged(w, h, oldw, oldh);   
}  

还有对屏幕显示的一些设置: 

requestWindowFeature(Window.FEATURE_NO_TITLE);  

//设置为全屏模式getWindow().setFlags

  1. setRequesteOrientation(ActivityInfo.SCREEN_ORIENTATION_LADSCAPE);  


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:802668次
    • 积分:14713
    • 等级:
    • 排名:第852名
    • 原创:640篇
    • 转载:316篇
    • 译文:11篇
    • 评论:414条
    联系方式

    我的github




    QQ:2657607916

    QQ讨论群:346618607

    微信:chenyu_920310

    邮箱:2657607916@qq.com