listView.getChildAt(i)时java.lang.NullPointerException
BaseAdapter返回的是当前屏幕所能显示Item条数的组件,所以通过listView.getChildAt(i);
返回的是当前屏幕所能显示的组件。不能通过listView.getChildAt(i)方法获取除当前屏幕所能显示组件以外的其他组件。
所以以下的方法是错误的:
for (int i = 0; i < listView.getCount(); i++)
{
CheckBox checkBox = (CheckBox)listView.getChildAt(i); //试图通过此方法返回ListView全部的Item中的组件,可是是错误的。
}
上面的做法会出现例如以下异常:
查看源码可知:
此时通过listView.getChildAt(i);获得的对象应该是null,null对象是没有属性和方法的所以会出现空指针异常。
正确做法:
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public voidonItemClick(AdapterView<?> parent, View view,
int position, longid) {
// TODO Auto-generated method stub
CheckBoxcheckBox=(CheckBox) view.findViewById(R.id.cbSelect);
checkBox.toggle();
if ( checkBox.isChecked()) {
// 加入该列表项的电话号码
sendList.add(numList.get(position));
sendName.add(nameList.get(position));
}else {
//从群发列表中移除电话号及姓名
sendList.remove(numList.get(position));
sendName.remove(nameList.get(position));
}
}
});
相同是为了获得用于所选择的Item。这种方法则选择了当用户单击了某个Item时通过回调OnItemClickListener,获取单击的Item中的组件(也就是适配器public View getView(int position, View convertView,ViewGroupparent)所返回的组件),通过此组件找到它的子组件。然后对子组件进行对应的操作。
listView.getChildAt(i)时java.lang.NullPointerException的更多相关文章
- Android开发报错系列(一),java.lang.NullPointerException,at android.widget.ListView.setupChild
问题描述:运行代码是报空指针错误,java.lang.NullPointerException,at Android.widget.ListView.setupChild 问题定位:listview控 ...
- Spring异常解决 java.lang.NullPointerException,配置spring管理hibernate时出错
@Repository public class SysUerCDAO { @Autowired private Hibernate_Credit hibernate_credit; /** * 根据 ...
- 新人踩坑的一天——springboot注入mapper时出现java.lang.NullPointerException: null
来公司的第二周接到了定时任务的开发需求:每天早上十点发送用户报表邮件 .校招新人菜鸟没做过这玩意有些懵(尴尬)于是决定分步写,从excel导出->邮件发送->定时器实现->mappe ...
- Maven打包时出现“Show Console View”错误弹出框,错误详情为“An internal error has occurred. java.lang.NullPointerException”的解决方法
今天为项目打包时出现了下面的错误提示: 打开Details里面写的是“An internal error has occurred. java.lang.NullPointerException”.在 ...
- 项目启动时 Exception in thread "HouseKeeper" java.lang.NullPointerException
首先查看是否是端口冲突引起,在日志信息该错误位置往上找,如果再无错误信息,而只有该错误,则原因可能如下: 原因: This is because Proxool is not being shutdo ...
- 分析java.lang.NullPointerException thrown in RelativeLayout measure()
典型的再现环境 模型: Sony Ericsson Android version: 2.3.4 StackTrace: E/AndroidRuntime( 3579): FATAL EXCEPTIO ...
- GUI学习中错误Exception in thread "main" java.lang.NullPointerException
运行时出现错误:Exception in thread "main" java.lang.NullPointerException 该问题多半是由于用到的某个对象只进行了声明,而没 ...
- jsp发布:Could not publish server configuration: null. java.lang.NullPointerException
1.jsp发布: Could not publish server configuration: null. java.lang.NullPointerException
- java.lang.NullPointerException org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69)
采用SSH框架时出现了 java.lang.NullPointerException org.apache.struts2.impl.StrutsActionProxy.getErrorMessage ...
随机推荐
- ICD2 VPP limiter for new PIC microcontrollers.
http://www.circuitsathome.com/mcu/pic_vpp_limiter VOUT = 2.5V * ( 1 + 24/10 ) = 2.5 * 3.4 = 8.5V New ...
- gcc g++支持C++11 标准编译及其区别
g++ -g -Wall -std=c++11 main.cpp gcc -g -Wall -std=c11 main.cpp 如果不想每次写这个-std=C++11这个选项该怎么办呢? 方法出处:h ...
- 一个小动画,颠覆你的CSS世界观
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- MVC借助Masonry实现图文瀑布流
借助Masonry可轻松实现瀑布流.本篇实现一个简单的图文瀑布流效果,如下: 图文瀑布流显示的2个要素是图片路径和文字内容,对应的Model为: namespace MvcApplication1.M ...
- hadoop函数说明图
- 使用依赖关系注入在 ASP.NET Core 中编写干净代码
ASP.NET Core 1.0 是 ASP.NET 的完全重新编写,这个新框架的主要目标之一就是更多的模块化设计.即,应用应该能够仅利用其所需的框架部分,方法是框架在它们请求时提供依赖关系.此外,使 ...
- Ip和long互转
// <summary> /// 将127.0.0.1形式的IP地址转换成十进制整数 /// </summary> /// <param name="strIp ...
- 把NDK的工具链提取出来单独使用
独立toolchain 把NDK压缩包解压到系统,如/mnt目录下,后在/mnt目录下建立文件夹my_ndk_toolchain,然后再/mnt目录下执行以下命令:/mnt/android-ndk-r ...
- MapReduce任务分析与讨论MapReduce job explained
In the last post we saw how to run a MapReduce job on Hadoop. Now we're going to analyze how a MapRe ...
- Java学习之路(转)
我也搞了几年JAVA了.因为一向懒惰,没有成为大牛,仅仅是一普通程序员,不爱玩社交站点.不爱玩微博,只有喜欢百度贴吧,潜水非常久了,手痒来给新人分享下从新手成长为老鸟的已见,也刷刷存在感,应该不比曝照 ...