Android开发中获取View视图宽与高的常用方法小结
程序员文章站
2023-12-15 19:10:52
本文实例讲述了android开发中获取view视图宽与高的常用方法。分享给大家供大家参考,具体如下:
一、根据windowmanager管理器获得
1)这两种方法在屏幕...
本文实例讲述了android开发中获取view视图宽与高的常用方法。分享给大家供大家参考,具体如下:
一、根据windowmanager管理器获得
1)这两种方法在屏幕未显示的时候,还是处于0的状态,即要在setcontentview调用之后才有效。
2)activity必须如此设置才能获得view的宽高
//设置为无标题 requestwindowfeature(window.feature_no_title); //设置为全屏模式getwindow().setflags(windowmanager.layoutparams.flag_fullscreen,windowmanager.layoutparams.flag_fullscreen
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;
二、在ondraw中由canvas来获得
@override protected void ondraw(canvas canvas) { super.ondraw(canvas); screenwidth =canvas.getwidth(); screenheight =canvas.getheight(); }
三、重写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); }
更多关于android相关内容感兴趣的读者可查看本站专题:《android视图view技巧总结》、《android图形与图像处理技巧总结》、《android开发入门与进阶教程》、《android调试技巧与常见问题解决方法汇总》、《android多媒体操作技巧汇总(音频,视频,录音等)》、《android基本组件用法总结》、《android布局layout技巧总结》及《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。