Android 开发中获取View视图的宽和高的几种方法
发布日期:2021-06-30 22:36:57
浏览次数:2
分类:技术文章
本文共 1330 字,大约阅读时间需要 4 分钟。
一、根据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指当前activityscreenWidth =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);}
———————————————————————
有需求者请加qq:136137465,非诚勿扰 (java 架构师全套教程,共760G, 让你从零到架构师,每月轻松拿3万) 01.高级架构师四十二个阶段高 02.Java高级系统培训架构课程148课时 03.Java高级互联网架构师课程 04.Java互联网架构Netty、Nio、Mina等-视频教程 05.Java高级架构设计2016整理-视频教程 06.架构师基础、高级片 07.Java架构师必修linux运维系列课程 08.Java高级系统培训架构课程116课时 (送:hadoop系列教程,java设计模式与数据结构, Spring Cloud微服务, SpringBoot入门) ——————————————————————–转载地址:https://lovoo.blog.csdn.net/article/details/51440108 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
感谢大佬
[***.8.128.20]2024年04月28日 01时03分43秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
写在今天
2019-05-01
Redis基本概念与背景
2021-07-04
Redis 数据类型整理
2021-07-04
2020.9.3 日记
2021-07-04
嵌入式Linux环境下python编程实践之pyserial初步
2021-07-04
python serial 在init中实例化过一次串口,再次实例化时会出现问题吗?
2021-07-04
戒游日记
2021-07-04
戒游日记2
2019-05-01
数据结构开始学习笔记
2019-05-01
前端之CSS
2019-05-01
css浮动属性
2019-05-01
css问题汇总
2019-05-01
css通配选择符
2019-05-01
CSS盒子模型
2019-05-01
前端之JS基础整理
2019-05-01
.py文件与.pyc文件的区别
2019-05-01
HTML基础之标签
2019-05-01
前端用到的HTML CSS JS JQ VUE概念整理
2019-05-01