我有一个片段包含它自己的布局。这个布局有一个ListView。 现在我尝试为这个ListView添加一个适配器,如下所示:
public static class LatestFragment extends Fragment {
ListView listView;
String[] values = {
"Test", "Test2"
};
public LatestFragment() {
}
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_latest, container, false);
listView = (ListView) rootView.findViewById(R.id.fragment_latest_listview1);
listView.setAdapter(new CustomListAdapter(getActivity(), values));
return rootView;
}
}
但我一直在
收到错误new CustomListAdapter(getActivity(), values)
Eclipse告诉我以下内容:
No enclosing instance of type MainActivity is accessible. Must qualify the
allocation with an enclosing instance of type MainActivity (e.g. x.new A()
where x is an instance of MainActivity).
为什么我不能为ListView设置适配器?
答案 0 :(得分:4)
我的猜测是CustomListAdapter
未被定义为static
内部类,因此无法在另一个static
内部类中使用它。
另外,请摆脱构造函数,或者至少链接到超类构造函数。