Android listView:NullPointerException

Android listView:NullPointerException,android,list,view,Android,List,View,我需要列表视图中的小帮助。我正在生成一个列表视图,但每当我执行getChildAt(int position)时,它就会抛出NullPointerException 这是密码 _list=(ListView)findViewById(android.R.id.list); _loadListElements(); _showListUI(); _list.getChildAt(1).setBackgroundColor(Color.WHITE); 如果您没有多个子元素,那么其中一个子元素

我需要列表视图中的小帮助。我正在生成一个列表视图,但每当我执行
getChildAt(int position
)时,它就会抛出NullPointerException

这是密码

_list=(ListView)findViewById(android.R.id.list);

_loadListElements();

_showListUI();

_list.getChildAt(1).setBackgroundColor(Color.WHITE);

如果您没有多个子元素,那么其中一个子元素肯定会给您一个NullPointerException,因为您必须在编程时从null开始向上计数。所以你可能想试试这个

_list.getChildAt(0).setBackgroundColor(Color.WHITE);

但是如果没有更多的代码和错误堆栈的logcat提取,就很难判断。

如果您没有多个子元素,那么其中一个子元素肯定会给您一个NullPointerException,因为您必须在编程时从null开始向上计数。所以你可能想试试这个

_list.getChildAt(0).setBackgroundColor(Color.WHITE);

但是如果没有更多的代码和错误堆栈的logcat摘录,就很难判断。

如果不清楚您想要实现什么功能,我不确定这些建议是否相关

除了使用
list.getChildAt()
,您是否可以从正在使用的适配器的方法中设置背景色?您将拥有该视图,但我不知道您是否拥有数据,还不知道要在哪个视图上更改背景

从您的一条评论中,听起来您想要查看刚刚单击的任何列表项。中提供的视图“v”似乎应该是您希望使用的视图


希望这两个建议中的一个能有所帮助。

我不知道您想要实现什么功能,但我不确定这些建议中的任何一个是否相关

除了使用
list.getChildAt()
,您是否可以从正在使用的适配器的方法中设置背景色?您将拥有该视图,但我不知道您是否拥有数据,还不知道要在哪个视图上更改背景

从您的一条评论中,听起来您想要查看刚刚单击的任何列表项。中提供的视图“v”似乎应该是您希望使用的视图


希望这两种方法中的一种能有所帮助。

成功了。。。。。。。。。。。。。 在getView()中,据我所知,它之前不起作用的原因是

要进行状况检查。。。 例如:如果(条件匹配)更改颜色

当列表用于更新自身时,这导致了问题

所以正确的答案是:如果(条件)[做某事];else[恢复原状]


这是因为我没有其他声明,所以我遇到了问题。

让它工作了。。。。。。。。。。。。。 在getView()中,据我所知,它之前不起作用的原因是

要进行状况检查。。。 例如:如果(条件匹配)更改颜色

当列表用于更新自身时,这导致了问题

所以正确的答案是:如果(条件)[做某事];else[恢复原状]

这是因为我并没有其他声明,所以我遇到了问题

我尝试了OnListItemClickListener(),但失败了。最后,我对我为listview定制的适配器进行了一些修改。在getView()中,我对经常添加到列表中的项应用clickListener。n在那里执行所有必需的功能。这是我的代码,我在列表n中添加了图像视图,以便在imageview上应用侦听器

getChildAt(i)抛出异常,因为它只对可见项-1起作用。所以它不起作用

我认为它将帮助那些想改变颜色时,特定的列表项是>选择。去做吧

在自定义适配器的getView()中 //---------------------------------代码------------------------------------------

我尝试了OnListItemClickListener(),但失败了。最后,我对我为listview定制的适配器进行了一些修改。在getView()中,我对经常添加到列表中的项应用clickListener。n在那里执行所有必需的功能。这是我的代码,我在列表n中添加了图像视图,以便在imageview上应用侦听器

getChildAt(i)抛出异常,因为它只对可见项-1起作用。所以它不起作用

我认为它将帮助那些想改变颜色时,特定的列表项是>选择。去做吧

在自定义适配器的getView()中 //---------------------------------代码------------------------------------------


仅在写入linebreak代码后出现空指针异常将代码拆分为多行。因此,我们可以查看_list是否为null,或者getChildAt(1)是否返回null。实际上,没有列表正确生成所有其他内容,因此我认为列表中没有问题……这是一个很长的代码,因此我无法将其粘贴到此处……sorrynull指针异常仅在写入Line后将代码拆分为多行。因此,我们可以查看_list是否为null,或者getChildAt(1)是否返回null。实际上,没有列表正确生成所有其他内容,因此我认为列表中没有问题……这是一个很长的代码,因此我无法将其粘贴到这里……对不起,我将尝试从log cat粘贴更多详细信息,目前我不在我的工作场所。我想要的是在列表视图中获得一行的视图。与单击列表项时返回的视图相同????kkkk我将尝试从log cat粘贴更多详细信息,目前我不在工作场所。我想要的是在列表视图中获得一行的视图。与单击列表项时返回的视图相同?????是的,我最初仅在getView()中执行此操作,但没有给出所需的结果。它正在设置多行的背景。因此,我考虑在创建列表后跳转到特定行的视图。例如。。创建列表后,为列表视图第4行的背景上色。我仍在尝试,如果我能得到一些解决方案,我会把它贴在这里。。。。。感谢您的响应,我最初只是在getView()中完成的,但并没有得到想要的结果。是塞蒂