写作业的时候发现了如题的问题,在我的onCreateView中初始的return如下:
return inflater.inflate(R.layout.activity_music_fragment, container, false);
/*R.layout.activity_music_fragment是fragment转换过来之后要显示的界面*/
后来改成了:
View view = inflater.inflate(R.layout.activity_music_fragment, container, false);
/*从view中获取listview*/
musicFm_lv = view.findViewById(R.id.musicFm_lv);
/*其他操作*/
return view;
我的理解是因为初始的return是直接默认你的界面(也就是.xml文件)是已经布置好了的,所以会直接返回界面。但是由于我们需要在listview里设置布局啥的,要对界面进行操作,所以就需要获取界面->操作数据或进行adapt->return界面。问题就解决啦!
插一句:获取listview的时候记得写对id……本人因为搞了两个页面弄混了没查找出来一直在报空的错误,报错大概长这样: java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference
祝你好运