Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.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 如何通过长按从GridView中选择一个项目,因此我需要打开上下文ActionBar菜单并选择该项目?_Android_Gridview - Fatal编程技术网

Android 如何通过长按从GridView中选择一个项目,因此我需要打开上下文ActionBar菜单并选择该项目?

Android 如何通过长按从GridView中选择一个项目,因此我需要打开上下文ActionBar菜单并选择该项目?,android,gridview,Android,Gridview,我设计了一个包含图标列表的网格视图的视图寻呼机。我需要通过选择一个图标来显示上下文操作栏,并且我也需要选择该图标。请您给我一个建议 我也在使用函数onitemlongclicklinklistener()。请帮助我完成上述场景?使用此函数 mMultiChoiceModeListener = new MultiChoiceModeListener() { public boolean onPrepareActionMode(ActionMode mode, Menu menu)

我设计了一个包含图标列表的网格视图的视图寻呼机。我需要通过选择一个图标来显示上下文操作栏,并且我也需要选择该图标。请您给我一个建议

我也在使用函数
onitemlongclicklinklistener()
。请帮助我完成上述场景?

使用此函数

mMultiChoiceModeListener = new MultiChoiceModeListener() {

        public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
            return false;
        }

        public void onDestroyActionMode(ActionMode mode) {
            mode = null;
            mAdapter.clearSelection();
        }

        public boolean onCreateActionMode(ActionMode mode, Menu menu) {
            mode.setTitle("Options");
            mode.getMenuInflater().inflate(R.menu.action_mode, menu); // inflate your menu for the contextual action bar here
            return true;
        }

        public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
            switch (item.getItemId()) {
            // handle the click of the buttons of the contextual action bar here as a normal menu
            }
            return true;

        }

        @Override
        public void onItemCheckedStateChanged(ActionMode mode,
                int position, long id, boolean checked) {

        }
    };
    mListView.setOnItemLongClickListener(new OnItemLongClickListener() {

        @Override
        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            mGrid.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
            arg1.setSelected(true);
            return true;
        }
    });
    mGrid.setMultiChoiceModeListener(mMultiChoiceModeListener);
        mListView.setOnItemLongClickListener(new OnItemLongClickListener() {

        @Override
        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            mGrid.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
            arg1.setSelected(true);
            return true;
        }
    });
        mGrid.setOnItemLongClickListener(new OnItemLongClickListener() {

        @Override
        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int arg2, long arg3) {
            arg1.setSelected(true);
            return true;
        }
    });
mListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);