Android ListView 和ScroolView 出现onmeasure空指针的解决办法

作者:lqh 时间:2021-11-25 18:19:03 

ListView 和ScroolView同时使用计算高度时onmeasure报空指针的解决办法

前言:

虽然Android 的设计者始终认为ListView、GridView+ScroolView组合使用并不是一种比较好的实现方法。但是在我们开发过程中又会经常使用到这样的需求,特别是在适配小屏幕手机的时候又必须要用这种让人不接受的设计,下面就来说一下在计算ListView或者GridView的过程中会出现onmeasure空指针的问题。

解决办法

当我发现listItem.measure(0,0)报空指针异常的时候,第一反应是listItem报空指针,然而debug调试过后发现其不为null,这个时候就比较费解了。

通过查看官方API和一些资料查找后发现了幕后的原因,其主要原因跟Linearlayout的机制有关,原因是因为只有Linearlayout重写了onmeasure这个方法,而android的其他的4种布局均没有重写onmeasure方法,想到这里,这个问题就不解自破了。既然要用到measure计算高度,那么我们就只能用Linearlayout布局了,所有解决这个问题的办法就是把你对应的适配器(adapter)里的其他布局改成Linearlayout就OK了。

自从跟进了这个问题之后,我最近也在寻找新的方式取代这种ListView 和ScroolView同时使用的情况,研究出来后会第一时间分享给大家。希望这篇博客能帮助大家解决这个问题。

总结

把adapter中的布局改成Linearlayout即可。原因如上。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

标签:onmeasure,空指针,Android
0
投稿

猜你喜欢

  • JavaWeb开发基于ssm的校园服务系统(实例详解)

    2022-11-07 16:40:48
  • Java中synchronized的几种使用方法

    2023-06-19 16:33:28
  • Android仿通话来电界面效果

    2022-01-02 07:48:51
  • Java中集合和数组的排序方式小结

    2023-08-25 00:52:10
  • 在Eclipse中使用版本管理工具SVN的图文教程

    2022-07-21 17:39:51
  • C#中循环语句:while、for、foreach的使用

    2022-05-01 02:42:55
  • java10下编译lombok注解代码分享

    2023-06-06 11:02:35
  • Java的数据类型和参数传递(详解)

    2022-12-30 18:52:25
  • Java数组越界问题实例解析

    2023-10-25 18:16:23
  • c#的dllimport使用方法详解

    2023-04-20 04:01:49
  • Java 中实现随机无重复数字的方法

    2022-07-06 15:57:37
  • java Semaphore共享锁实现原理解析

    2021-11-02 23:12:38
  • C++对string进行大小写转换操作方法

    2023-11-03 04:32:59
  • Android自带emoji表情的使用方法详解

    2021-11-25 09:28:22
  • Easyui的combobox实现动态数据级联效果

    2022-02-15 07:26:13
  • Java中Arraylist动态扩容方法详解

    2023-04-30 23:25:53
  • JDK8并行流及串行流区别原理详解

    2023-06-25 16:23:39
  • 使用C++ Matlab中的lp2lp函数教程详解

    2023-07-13 17:13:12
  • 比Math类库abs()方法性能更高的取绝对值方法介绍

    2023-10-14 07:51:36
  • Java擦除和转换实例分析

    2022-03-30 02:19:45
  • asp之家 软件编程 m.aspxhome.com