`
steeven
  • 浏览: 312218 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android View预估大小

阅读更多
android的布局分两个阶段,先measure()后requestLayout(),

测量的三种模式:
  • UNSPECIFIED: 不限定
  • EXACTLY: 固定
  • AT_MOST:最多

LinearLayout 调用measure(EXACTLY 240,UNSPECIFIED)来得到高度。
View.measure(widthMeasureSpec,heightMeasureSpec),需要的两个spec是Mode和限定值计算出来的:
View.MeasureSpec.makeMeasureSpec(maxW,View.MeasureSpec.AT_MOST)

measure()后调用getMeasuredWidth()和getMeasuredHeight()得到测量后的值。

此法可用于Tip等窗口大小预估。

参考:
http://code.google.com/android/samples/ApiDemos/src/com/google/android/samples/view/LabelView.html
分享到:
评论

相关推荐

    Android 自定义瀑布流式布局

    2. **测量和布局**:在自定义ViewGroup的onMeasure()方法中,需要为每个子View进行测量,获取其实际大小,然后在onLayout()方法中根据列宽和间距进行排列。瀑布流布局的难点在于如何计算每一列的高度,确保元素在列...

    安卓进度条loadingprogress相关-Android带刻度的可选角度进度条.zip

    在`onMeasure()`方法中,需要正确计算并设置View的大小,确保进度条能够正确渲染。同时,`onDraw()`方法会根据当前进度和刻度参数来绘制进度和刻度。 `JavaApk源码说明.txt`可能是对源码的简要说明,包含了一些关键...

    SmartImageView

    1. **合理设置图片大小**:根据实际需求,预估图片的最佳显示尺寸,避免加载过大图片导致内存溢出。 2. **缓存策略调整**:根据应用的内存和磁盘空间情况,调整缓存的大小和过期策略。 3. **错误处理**:为用户...

    jvm-memory-view-0.93.162

    2. **使用集合类的适量大小**:避免过度扩容,根据实际需要预估集合容量。 3. **及时释放资源**:对于不再使用的资源,如文件流、数据库连接等,应及时关闭,防止内存泄漏。 4. **利用Android的内存管理特性**:...

    LGame-Android-0.3.0(带书签).pdf

    LGame-Android还支持将游戏轻松移植到PC环境,并且对WP7环境的C#语法移植已经启动,预估将在2011年11月完成。 LGame-Android-0.3.0版的Core包结构中,包含了一系列的关键类和接口。这些类包括Android2DHandler、...

    Android高级应用源码-listview快速滑动,修改默认的滑动条.zip

    `android:scrollbarSize`调整大小;`android:scrollbarAlwaysDrawHorizontalTrack`和`android:scrollbarAlwaysDrawVerticalTrack`控制滚动条是否始终显示轨道。 3. **自定义ScrollBarDrawable**:创建一个Drawable...

    Android ProgressBar 进度条

    - 通过修改`android:indeterminateWidth`和`android:indeterminateHeight`可以调整不确定模式下进度条的大小。 4. **动画效果**: - 在determinate模式下,可以使用`ObjectAnimator`或`ValueAnimator`来添加平滑...

    文本框自动调整大小

    在Android中,这需要覆盖View的onMeasure方法并计算出合适的高度;在iOS中,需要实现layoutSubviews方法。 5. **动画效果**:为了让用户体验更流畅,可以添加动画效果,如平滑地扩展或收缩文本框的高度。Android的...

    FlowViewGroup

    首先计算每一行的起始位置,然后根据子View的大小将其放置在合适的位置。如果当前行已满,需要开始新的一行。 3. **动态调整(Dynamic Adjustments)**:FlowViewGroup应该能够处理屏幕旋转、子View添加和删除等情况...

    GridView显示大量图片

    1. **使用BitmapOptions预估大小** 在加载图片之前,通过`BitmapFactory.Options`的`inJustDecodeBounds`属性可以获取图片原始尺寸,进而计算出适合GridView显示的最佳尺寸。这样可以减少不必要的内存占用。 2. **...

    动态设置textview的高.

    - 在Android中,View的大小可以通过`measure()`方法来计算。TextView在布局中默认会根据其内容自动调整高度,但如果你想自定义高度,需要先测量其内容高度。 2. **MeasureSpec**: - `MeasureSpec`是Android用来...

    Android之仿在Listview显示多任务下载效果,可以中途停止的360手机助手.zip

    在Android开发中,实现一个类似360手机助手的多任务下载列表视图是一个常见的需求。...在实际开发中,还需要考虑更多的细节,如下载速度限制、流量管理、文件大小预估等,以打造一个更加用户友好的应用。

    DisplayingBitmaps

    Android官方推荐使用`options.inJustDecodeBounds`来预估图片大小,避免加载过大的图片。例如: ```java BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; ...

Global site tag (gtag.js) - Google Analytics