android-ListView.setAdapter错误:java.lang.NullPointerException
通过在ListFragment活动中设置适配器,我得到了错误“java.lang.NullPointerException” 这是我的密码:android-ListView.setAdapter错误:java.lang.NullPointerException,java,android,listview,nullpointerexception,Java,Android,Listview,Nullpointerexception,通过在ListFragment活动中设置适配器,我得到了错误“java.lang.NullPointerException” 这是我的密码: private List<Music> musicList; public View inflate; ListView searchList; public class SearchFragment extends ListFragment { public View onCreateView(LayoutInflater inflater,
private List<Music> musicList;
public View inflate;
ListView searchList;
public class SearchFragment extends ListFragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
context = getActivity().getApplicationContext();
inflate = inflater.inflate(R.layout.search, container, false);
musicList = new ArrayList<Music>();
adapter = new CustomListAdapter(musicList, context);
searchList.setAdapter(adapter);
}
您已经扩展了
ListFragment
so
setListAdapter(adapter);
看一看首先,您使用了
ListView searchList
和您尚未初始化的同一个对象,因此在调用searchList.setAdapter(adapter)时,它会给您NullPointerException代码>
其次,您采用了ListFragment
,因此可以使用getListView()
方法直接获取listview。即使您可以直接调用setListAdapter(adapter)
方法。尝试此方法,您也会得到NullPointerException,因为您的代码中没有在set adepter之前写入下面的语句。您必须初始化列表视图ListView searchList=(ListView)充气。findViewById(R.id.searchList);
setListAdapter(adapter);