Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android中GetListAdapter返回null_Android_Android Listview_Listactivity - Fatal编程技术网

Android中GetListAdapter返回null

Android中GetListAdapter返回null,android,android-listview,listactivity,Android,Android Listview,Listactivity,我有一个扩展ListActivity的活动。在其onCreate方法中,我执行以下操作: ListView listView = (ListView) findViewById(android.R.id.list); listView.setAdapter(new InteractiveArrayAdapter(this, model)); 我为在xml布局中定义的listview小部件设置了一个自定义适配器 我的自定义适配器InterativeArrayAda

我有一个扩展ListActivity的活动。在其onCreate方法中,我执行以下操作:

        ListView listView = (ListView) findViewById(android.R.id.list);
        listView.setAdapter(new InteractiveArrayAdapter(this, model));
我为在xml布局中定义的listview小部件设置了一个自定义适配器

我的自定义适配器InterativeArrayAdapter扩展了ArrayAdapter。模型是我为管理listview项数据而构建的一个类

我的问题在于扩展ListActivity的活动:当我处理按钮单击时,我执行以下操作:

    public void onClickCompareButton(View view) {
    InteractiveArrayAdapter adapter;
    Set<Integer> checkedItems;
    Iterator<Integer> it;
    Model element;

    adapter = (InteractiveArrayAdapter) getListAdapter();
    checkedItems = adapter.getCheckedItems();
    it = checkedItems.iterator();

    int size = checkedItems.size();
    for (int i = 0; i < size; i++) {
        element = adapter.getItem(it.next());
        // TODO
    }
}
适配器获取空值,因此下一行崩溃:

checkedItems = adapter.getCheckedItems();

关于如何解决这个问题有什么想法吗?

问题应该是如何将适配器设置到列表中

 ListView listView = (ListView) findViewById(android.R.id.list);
 listView.setAdapter(new InteractiveArrayAdapter(this, model));
由于扩展了ListActivity,因此默认情况下ListView应可用于您的活动。所以你应该试试这个

setListAdapter(new InteractiveArrayAdapter(this, model));

setListAdapter(adapterObj)在扩展ListActivity时可用

天哪!真是个错误!非常感谢!它起作用了!
setListAdapter(new InteractiveArrayAdapter(this, model));