android调用measure时报空指针

Android调用
android.view. View.measure(int widthMeasureSpec, int heightMeasureSpec)

这个函数时,如果这个View是通过LayoutInflater来构建的,会报:

 java.lang.NullPointerException
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:529)
at android.view.View.measure(View.java:15676)


空指针,原因是:


原因是用Inflater渲染组件的时候并没有给其指定父控件,所以渲染器不会去解析width 和 height属性,就会导致空指针异常。
解决方法:
view.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));指定宽度和高度,然后调用measure方法就OK。(这个解答来自:http://www.eoeandroid.com/forum.php?mod=redirect&goto=findpost&ptid=92706&pid=3380790 )


这里的WRAP_CONTENT可以根据View的具体长宽来设定。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值