`
OliveExcel
  • 浏览: 70405 次
文章分类
社区版块
存档分类
最新评论

Android在绘制View之前计算其高度 / 宽度

阅读更多

一般来说, View是需要在绘制到界面之后才能取到它的宽度 / 高度.

如果需要在绘制之前就取到这些值, 则需要主动调用View的measure方法, 来提前计算其尺寸. 如下:

final DisplayMetrics dm = mContext.getResources().getDisplayMetrics();
viewToMeasure.measure(
        View.MeasureSpec.makeMeasureSpec(dm.widthPixels, View.MeasureSpec.AT_MOST),
        View.MeasureSpec.makeMeasureSpec(dm.heightPixels, View.MeasureSpec.AT_MOST));

final int width = viewToMeasure.getMeasuredWidth();
final int height = view.getMeasuredHeight();

 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Android即时贴控件StickerView.zip

    StickerView是Android上的一个可以进行添加,缩放,拖动,删除操作...如果sticker可以拉伸,那么高度与宽度属性不能为0。stickerView.addSticker(bitmap) stickerView.addSticker(drawable) 标签:StickerView

    Android 获取屏幕高度,标题高度,状态栏高度(实例代码)

    通过Activity的getWindow().findViewById(Window.ID_ANDROID_CONTENT)获取系统当前显示的 view根(是一个framelayout对象),android绘制会将要绘制的view放置在framelayout中绘制。 Display对象获取屏幕高宽 : ...

    Android在OnCreate中获取控件的宽度和高度的实现代码

    在Android中,有时需要对控件进行测量,得到的控件宽度和高度可以用来做一些计算。在需要自适应屏幕的情况下,这种计算就显得特别重要。另一方便,由于需求的原因,希望一进入界面后,就能得到控件的宽度和高度。 ...

    Android编程使用自定义View实现水波进度效果示例

    本文实例讲述了Android编程使用自定义View实现水波进度效果。分享给大家供大家参考,具体如下: 首先上效果图: 简介: 1.自动适应屏幕大小; 2.水波自动横向滚动; 3.各种绘制参数可通过修改常量进行控制。 代码不...

    Android视图的绘制流程(上) View的测量

    measure表示View的测量过程,用于测量View的宽度和高度;layout用于确定View在父容器的位置;draw则是负责将View绘制到屏幕中。下面主要来看一下View的Measure过程。 测量过程  View的绘制流程是从ViewRoot的...

    Android自定义View实现音频播放圆形进度条

    根据音频的时间长度计算出圆形进度条绘制的弧度 通过Handler刷新界面来更新圆形进度条的进度 具体实现过程分析: 首先来看看自定义View中定义的一些成员变量 //表示坐标系中的一块矩形区域 private RectF ...

    新版Android开发教程.rar

    的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...

    android Bitmap用法总结

    FIT_START / fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置 FIT_XY / fitXY 把图片 不按比例 扩大/缩小到View的大小显示 MATRIX / matrix 用矩阵来绘制,动态缩小放大图片来显示。 //放大...

    Android 拖拽及ImageView scaleType使用实例

    fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置(图片会完整显示) fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示(图片会完整显示) fitEnd 把图片按比例扩大/缩小到View的宽度,...

    Android绘制音乐播放器示波器

    示波器是在大学的时候老师教的,但是出来工作一直没有用到过,渐渐的也就忘记了,现在重新学习一下。来看看效果图: 这里是一个自定义的柱状图,然后有一个按钮,点击按钮的时候,这里柱子会不停的运动,类似于音乐...

    Android手机顶部导航菜单源码.rar

    Android手机顶部导航菜单源码,有点类似QQ聊天的顶部菜单相似,外围框架的宽度,亦即coverImg的宽度,因为coverImg要包裹住itemImg和itemName,也就是严格按照美工出的素材图的大小来绘制,保存具体展示的内容,当然...

    计步器的实现

    参数四是如果这是true(真)的话,在绘制圆弧时将圆心包括在内,通常用来绘制扇形;如果它是false(假)这将是一个弧线, 参数五是Paint对象; */ canvas.drawArc(rectF, startAngle, angleLength, false, paint); }...

    Android TextView实现词组高亮的示例代码

    本文介绍了Android TextView实现... 在每次绘制之前计算将要绘制的文本是否会超出屏幕宽度,如果超出则换行 protected void onDraw(Canvas canvas) { super.onDraw(canvas); float x_draw = getPaddingLeft(); f

    Android自定义柱状图,带有标注和左右滑动效果

    最近自己改进了一下柱状图的绘制,支持多跟柱子,自己设置颜色,并且添加了手动滑动效果(在屏幕绘制宽度不够时启动滑动)

    Android开发笔记之:在ImageView上绘制圆环的实现方法

    思路是先绘制内圆,然后绘制圆环(圆环的宽度就是paint设置的paint.setStrokeWidth的宽度),最后绘制外圆。请看核心源码: 代码如下:<SPAN xss=removed>package yan.guoqi.rectphoto;import android.content....

    Android中实现词组高亮TextView方法示例

    前言 本文主要给大家介绍了关于Android实现词组高亮...在每次绘制之前计算将要绘制的文本是否会超出屏幕宽度,如果超出则换行 protected void onDraw(Canvas canvas) { super.onDraw(canvas); float x_draw = getPa

    Android仿微信联系人列表字母侧滑控件

    在View的onDraw()方法下绘制每一个字母 protected void onDraw(Canvas canvas) { super.onDraw(canvas); int height = getHeight();// 获取对应高度 int width = getWidth(); // 获取对应宽度 int singleHeight...

    android开发秘籍

    4.2.2 秘诀28:控制ui 元素的宽度和高度 71 4.2.3 秘诀29:设置相对布局和布局id 73 4.2.4 秘诀30:通过编程声明布局 74 4.2.5 秘诀31:使用独立线程更新布局 75 4.3 文本操作 78 4.3.1 秘诀32:设置和更改文本...

Global site tag (gtag.js) - Google Analytics