试过在OnCreate()中获取控件高度与宽度的童鞋都知道,getWidth()与getHeight()方法返回是0,具体原因看一下Activity的生命周期
就会明白。
上代码:
方法一:
int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
ssidtext.measure(w,
h);
int width =ssidtext.getMeasuredWidth();
int height =ssidtext.getMeasuredHeight();
方法二:
ViewTreeObserver vto = ssidtext.getViewTreeObserver();
vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
public boolean onPreDraw() {
int height = ssidtext.getMeasuredHeight();
int width = ssidtext.getMeasuredWidth();
return true;
}
});
另外还搜索到一个方法:
-----------------------------------------------------------
先贴到这里。正在做试验。(试验完毕,这种方法得到的控件宽是正确的。)
ViewTreeObserver vto = mArrowUp.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new
OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
mArrowUp.getViewTreeObserver().removeGlobalOnLayoutListener(this);
Log.e("Width",Integer.toString(mArrowUp.getWidth()));
}
});
具体用哪一种可以根据需求自己选择
分享到:
相关推荐
在Android应用开发中,有时我们需要在界面上线之前获取到控件的宽度和高度,以便进行自适应布局或者精确的计算。在`OnCreate`方法中直接尝试获取这些尺寸可能无法得到正确的结果,因为`OnCreate`主要用于初始化数据...
在Android开发中,有时我们需要在`onCreate()`方法中获取控件的高度或宽度,以便进行一些自定义布局或计算。然而,`onCreate()`方法在应用程序启动时被调用,主要用于初始化活动的数据,并非用于获取视图的尺寸,...
在Android应用开发中,我们经常需要在特定时刻获取UI控件的高度和宽度,例如TextView、Button等。然而,在`OnCreate()`方法中直接调用`getWidth()`和`getHeight()`通常会返回0,因为此时布局尚未完全绘制。为了解决...
本文将详细讲解如何在`onCreate()`方法中实现这一功能,以及与之相关的控件、宽度和高度相关的知识点。 首先,我们需要了解Android中的控件。在Android系统中,控件(View)是用户界面的基本元素,如按钮(Button)...
Android中获取控件宽高的4种方法集合 Android手机应用程序开发中,获取控件的宽高是一项非常重要的任务。今天,我们将分享四种获取控件宽高的方法,希望能够对Android开发者提供有价值的参考。 方法1:...
在Android开发中,获取控件的宽度和高度是常见的需求,尤其在自定义视图或者动态布局时。这个压缩包“android获取控件宽高.rar”可能包含了一些示例代码或者教程,帮助开发者理解如何在不同场景下获取控件尺寸。由于...
在Android开发中,获取屏幕和控件的宽高是常见的需求,这有助于我们进行界面布局和自定义视图的设计。本示例demo将详细介绍三种不同的方法来获取Android设备的屏幕宽高,以及如何获取控件的宽高。下面将详细阐述这些...
在Android开发中,为了提供与iOS相似的用户体验,开发者经常需要实现特定的UI控件,例如iOS风格的日历滚轮选择器。这个“Android高仿IOS日历滚轮选择控件”就是一个很好的例子,它旨在复刻iOS日历中常用的日期和时间...
在Android开发中,自定义控件是提升应用用户体验和界面独特性的重要手段。本文将深入探讨如何创建一个自定义的时钟控件,模仿真实时钟的指针运动,为用户提供直观的时间显示。 首先,我们需要了解Android控件的基础...
本文将详细介绍如何在Android应用程序中使用`ListView`控件,包括其基本概念、工作原理以及如何实现简单的数据绑定。 #### 二、ListView 控件概述 `ListView` 是一种可以滚动显示多个数据项的控件,非常适合用于...
在Android中,控件的宽度和高度通常在布局完成后才能准确获取。在`onCreate`方法中直接获取控件尺寸可能会得到0,因为此时布局尚未完全绘制。为获取真实尺寸,可以采取以下策略: 1. **方法一**: 在`...
在Android开发中,自定义控件是提升应用独特性和用户体验的重要手段。CircleImageView是一个流行的库,它允许开发者将普通的ImageView转换为圆形展示,通常用于显示用户头像或其他需要圆形显示的图片。本教程将深入...
Android 获取屏幕宽高与获取控件宽高的方法 Android 开发中,获取屏幕宽高和控件宽高是一个非常重要的环节。今天,我们将介绍三种获取屏幕宽高的方法和获取控件宽高的方法。 一、获取屏幕宽高 在 Android 中,有...
### Android控件动态使用与创建详解 #### 一、引言 在Android开发过程中,界面设计通常是通过XML布局文件来完成的。这种方式虽然方便快捷,但在某些场景下却显得不够灵活,例如需要根据用户操作或者数据变化实时...