`
king_tt
  • 浏览: 2109045 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android 在OnCreate()中获取控件高度与宽度

 
阅读更多

试过在OnCreate()中获取控件高度与宽度的童鞋都知道,getWidth()与getHeight()方法返回是0,具体原因 看一下Activity的生命周期 就会明白。

上代码:

方法一:

<wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr>int</wbr></wbr></wbr></wbr></wbr></wbr></wbr>w=View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
inth=View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED);
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>ssidtext.measure(w, h);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
intwidth=ssidtext.getMeasuredWidth();
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
intheight=ssidtext.getMeasuredHeight();

方法二:

<wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr>ViewTreeObservervto<span style="word-wrap:normal; word-break:normal">=</span><span style="word-wrap:normal; word-break:normal">ssidtext.getViewTreeObserver();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>vto.addOnPreDrawListener(</wbr></wbr></wbr></wbr></wbr></wbr></wbr></span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">new</span><span style="word-wrap:normal; word-break:normal">ViewTreeObserver.OnPreDrawListener() {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">public</span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">boolean</span><span style="word-wrap:normal; word-break:normal">onPreDraw() {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">int</span><span style="word-wrap:normal; word-break:normal">height</span><span style="word-wrap:normal; word-break:normal">=</span><span style="word-wrap:normal; word-break:normal">ssidtext.getMeasuredHeight();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">int</span><span style="word-wrap:normal; word-break:normal">width</span><span style="word-wrap:normal; word-break:normal">=</span><span style="word-wrap:normal; word-break:normal">ssidtext.getMeasuredWidth();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">return</span><span style="word-wrap:normal; word-break:normal; color:rgb(0,0,255)">true</span><span style="word-wrap:normal; word-break:normal">;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>}<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>});</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></span></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

具体用哪一种可以根据需求自己选择。

分享到:
评论

相关推荐

    Android中oncreate中获得控件高度或宽度的实现方法

    主要介绍了Android中oncreate中获得控件高度或宽度的实现方法的相关资料,希望通过本文大家能实现这样的功能,需要的朋友可以参考下

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

    在Android中,有时需要对控件进行测量,得到的控件宽度和高度可以用来做一些计算。在需要自适应屏幕的情况下,这种计算就显得特别重要

    Android OnCreate()中获取控件高度与宽度两种方法详解

    主要介绍了Android OnCreate()中获取控件高度与宽度两种方法详解的相关资料,这里提供了两种方法,大家可以都看下,需要的朋友可以参考下

    Android控件大全以及各布局空间的使用方式

    layout_alignRight - 当前元素与指定的元素右对齐 --&gt; &lt;RelativeLayout android:id="@+id/RelativeLayout01" android:layout_width="fill_parent" android:layout_height="fill_parent"&gt; &lt;TextView android:...

    新版Android开发教程.rar

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

    RopeProgressBar-一个带有松弛特效的进度条.zip

    slackdimension32dp进度条行进过程中下坠的最大高度(松弛的最大值), 即当为50%时的值app:strokeWidthdimension8dp设置进度条的宽度app:dynamicLayoutbooleanfalse设置进度条行进过程中,控件的高度是否随着Slack值的...

    计步器的实现

    * 获取当前步数的数字的高度 * * @param fontSize 字体大小 * @return 字体高度 */ public int getFontHeight(float fontSize) { Paint paint = new Paint(); paint.setTextSize(fontSize); Rect bounds_...

    高仿微信界面

    现在三个Fragment已经添加到了MainActivity中,滑动ViewPager切换Fragment,同时底部的导航栏也会切换,在为ViewPager添加监听以前,先说说底部导航栏。 第二步,底部导航。 这个的切换其实就是切换准备好的png...

    LCRapidDevelop-master

    # RapidDevelop-Android快速开发框架 - 框架持续更新中 - 这个框架是从平时项目里用的比较多的框架里整合而来 - 对本项目感兴趣的可以一起研究喜欢的朋友欢迎star - 同时也欢迎大家的宝贵意见issues - 如果大家...

    SwipeListViewTest项目

    下面两个表示向左或者向右滑动时的偏移量,一般不在xml文件中设置,而是在代码中根据设置的大小来设置偏移量。 swipe:swipeOffsetLeft=”0dp” swipe:swipeOffsetRight=”0dp” 再来看看Item布局文件,这里包括...

    ViewPagerFragment滑动切换

    * 如果想要立即执行这个等待中的操作,就要调用这个方法(只能在主线程中调用)。 * 要注意的是,所有的回调和相关的行为都会在这个调用中被执行完成,因此要仔细确认这个方法的调用位置。 */ ...

    CircleIndicator-一个轻量级的viewpager指示器 ,类似于nexus5 启动器的效果.zip

    属性说明属性名称类型说明ci_widthdimension小圆点的宽度ci_heightdimension小圆点的高度ci_margindimension小圆点间的间距ci_animatorreferenceViewPager页面切换时,给小圆点设置动画。设置当前的小圆点恢复到未...

Global site tag (gtag.js) - Google Analytics