在setContentView之后尝试在原始布局中引用窗口小部件时出错

时间:2011-11-29 00:29:42

标签: android listview nullpointerexception

我想以编程方式将listview放入我的android应用程序中。因此,当用户点击按钮时,它将setContentView(listview)。当用户选择该项目时,它将setContentView(R.layout.main)。但是,当我尝试在原始布局R.layout.main中引用布局小部件时,我收到javaNullPointerException。有人可以帮我澄清一下这个问题吗?

我使用onItemClickListener进行用户选择。

2 个答案:

答案 0 :(得分:2)

请勿使用setContentView来处理选择,使用ActivitystartActivity()启动新的startActivityForResult()。使用findViewById()通过搜索具有您指定ID的窗口小部件的当前内容视图树(您的layout.xml文件)来工作。设置新内容视图后,它将搜索您为新内容视图指定的任何XML布局。

答案 1 :(得分:1)

我不认为你想在这里做什么是有道理的:

setContentView(listview)

listview应该只是你布局的一部分。