1

我尝试在导航抽屉中创建一个 ExpandableListView。我尝试了一个示例代码,但在编译之前我得到了这个错误。

public class MainActivity extends Activity {

     ExpandableListAdapter listAdapter;
    ExpandableListView expListView;
    List<String> listDataHeader;
    HashMap<String, List<String>> listDataChild;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // get the listview
        expListView = (ExpandableListView) findViewById(R.id.left_drawer);

        // preparing list data
        prepareListData();

   listAdapter = new ExpandableListAdapter(this, listDataHeader, listDataChild);

错误在这一行: listAdapter = new ExpandableListAdapter(this, listDataHeader, listDataChild);

为什么它说无法实例化类型 ExpandableListAdapter ?

4

3 回答 3

10

ExpandableListAdapter也是android.widget.ExpandableListAdapter中的一个接口,看来你是在导入这个,而这是试图实例化你本地的 ExpandableListAdapter 类。

重命名您的ExpandableListAdapter.

于 2013-10-21T12:38:18.923 回答
2

使用此名称删除import android.widget.ExpandableListAdapter;或重命名您的班级。

:)

于 2015-08-19T10:42:05.610 回答
0

因为ExpandableListAdapter是一个interface, aka 没有实现。

检查文档以了解SimpleExpandableListAdapterExpandableListAdapter之类的一些实现。

于 2013-10-21T12:36:06.387 回答