我是Android的新手,我正在尝试在Fragment中创建一个GridView。但行
addressGrid.setAdapter(new Adapter(this));
不断给我一个错误。在我的代码中:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_name, container, false);
addressGrid = (GridView) rootView.findViewById(R.id.gridView1);
addressGrid.setAdapter(new Adapter(this));
return rootView;
}
我试过替换(newAdapter(this));与
(new Adapter(getActivity()));
和
(new Adapter(getContext()));
在Android开发者网站上引用但似乎都不起作用。我真的希望有人可以帮我弄清楚为什么我会收到这个错误以及如何解决它。提前谢谢!
答案 0 :(得分:0)
Adapter是一个接口,你试图实例化一个接口(在Java中是不可能的),你应该创建一个实现Adapter并编写代码的类,或者使用已经提供的类之一,如SimpleArrayAdapter,CursorAdapter等。我的建议是,如果你想在视图中使用特定的布局并为它添加一些独特的功能,那么创建一个从BaseAdapter扩展的类。
您可以查看此问题,以便更好地了解如何实现自己的适配器。 How to customize listview using baseadapter
希望它有帮助!
问候!