对不起,如果有人已经问过这个,但我的应用程序一直出错。我甚至无法参加比赛,因为我收到了一条错误信息"无法发表的声明"。
这是我片段上的代码
package com.example.dasilvadd.students;
public class OngletCours extends Fragment
{
DatabaseHelper dbhelper = new DatabaseHelper(getActivity());
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.ongletcours, container, false);
return rootView;
List<Cours> listeCours;
ArrayList<String> arrayList;
ArrayAdapter adapter = new ArrayAdapter<String>(getActivity(),R.layout.ongletcours, arrayList);
ListView l1= (ListView) getView().findViewById(R.id.ListCours);
listeCours= dbhelper.getAllCours();
if (!listeCours.isEmpty())
{
String item;
String[] cours = {""};
arrayList=new ArrayList<>(Arrays.asList(cours));
l1.setAdapter(adapter);
for(int i = 0; i < listeCours.size(); i++) {
item = listeCours.get(i).getCours();
arrayList.add(item);
adapter.notifyDataSetChanged();
}
}
else{
Toast t = Toast.makeText(getActivity(),"Error",Toast.LENGTH_LONG);
t.show();
}
}
}
当我在getActivity()
上ArrayAdapter
时,我的List<Cours> listeCours;
无法访问,我也不知道为什么......
答案 0 :(得分:1)
您将在函数前面返回rootView实例,因此之后不会调用任何内容。移动
return rootView;
到函数的底部。