Android 如何从Gridview中获取我选择的所有项目?

Android 如何从Gridview中获取我选择的所有项目?,android,gridview,android-adapter,Android,Gridview,Android Adapter,我使用的片段扩展了片段实现MultichoiceModelListener 而类扩展了BaseAdapter 当我从Gridview中选择项目时,我可以获得唯一的位置,如以下代码所示: public void onItemCheckedStateChanged(ActionMode mode, int position, long id, boolean checked) { // TODO Auto-generated method stub

我使用的片段
扩展了片段实现MultichoiceModelListener

类扩展了BaseAdapter

当我从Gridview中选择项目时,我可以获得唯一的位置,如以下代码所示:

public void onItemCheckedStateChanged(ActionMode mode, int position,
            long id, boolean checked) {
        // TODO Auto-generated method stub
        mActionText.setText(formatString(fileListView.getCheckedItemCount()));

    SparseBooleanArray checkedItems = fileListView.getCheckedItemPositions();

    Log.i(TAG, "fileListView.getCheckedItemPositions(); = " + checkedItems);
    if (checkedItems != null) {
        for (int i=0; i<checkedItems.size(); i++) {
            if (checkedItems.valueAt(i)) {
                String item = fileListView.getAdapter().getItem(
                                      checkedItems.keyAt(i)).toString();
                Log.i(TAG,item + " was selected");
            }
        }
    }
    mode.invalidate();

    }
项目的价值意味着什么

是否有其他方法可以获取我从Gridview中选择的所有项目


提前感谢。

您的布尔数组具有所选项目的索引。但是,您正在尝试打印对象。你应该打印他们的索引。更改
Log.i(选择标签,项目+)
Log.i(选择标记,i+)

你好,马丁

       You can use the following code snippet :- 
在view.setOnCheckedChangeListener中

                  if(isChecked){
                        extention = data[position];
                    }

其中数据是在gridview中显示的数组if项。

所以…我无法通过Android API一次获得我选择的所有项?我必须使用循环来记住我自己选择的项目?你可以。请根据data.length()应用for循环并获取所有选定项。
                  if(isChecked){
                        extention = data[position];
                    }