Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.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中如何关闭数组适配器类中的弹出窗口_Android - Fatal编程技术网

Android中如何关闭数组适配器类中的弹出窗口

Android中如何关闭数组适配器类中的弹出窗口,android,Android,我正在创建弹出窗口并在ListView项目单击事件上打开弹出窗口。弹出窗口中有两个按钮,一个是btnCamera,另一个是btnDismiss。问题是当我捕获图像并返回到ListView时,弹出窗口不会自动取消。我尝试在Resume()上取消弹出窗口活动中的方法 @Override protected void onResume() { super.onResume(); if(adapter.popupWindow_Camera != null) {

我正在创建弹出窗口并在ListView项目单击事件上打开弹出窗口。弹出窗口中有两个按钮,一个是btnCamera,另一个是btnDismiss。问题是当我捕获图像并返回到ListView时,弹出窗口不会自动取消。我尝试在Resume()上取消弹出窗口活动中的方法

@Override
    protected void onResume() {
        super.onResume();
 if(adapter.popupWindow_Camera != null)
        {
            adapter.popupWindow_Camera.dismiss();
            adapter.popupWindow_Camera = null;
        }

    }
这是我的ListView项目点击弹出窗口

    holder.imgBtn_Camera.setOnClickListener(new View.OnClickListener()
                {
                    @Override
                    public void onClick(View v)
                    {
                        LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                        View popupView = layoutInflater.inflate(R.layout.camera_popup, (ViewGroup) ((Activity) context).findViewById(R.id.popup_element));
                        popupWindow_Camera = new PopupWindow(popupView, ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
                        popupWindow_Camera.setWidth(720);
                        popupWindow_Camera.setHeight(350);
                        popupWindow_Camera.setFocusable(true);
                        popupWindow_Camera.showAtLocation(popupView, Gravity.BOTTOM, 0, 87);
                        popupWindow_Camera.setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));

                        Button btnCamera = (Button) popupView.findViewById(R.id.button_Camera);
                        Button btnGallery = (Button) popupView.findViewById(R.id.button_Gallery);
                        Button btnDismiss = (Button) popupView.findViewById(R.id.btnCancelCamera);

                        btnCamera.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View v)
 {
                              Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
                            String extr = Environment.getExternalStorageDirectory().toString() + File.separator + "classnkk_images";
                            File myPath = new File(extr, picformat);
                            cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(myPath));
                            ((Activity) context).startActivityForResult(cameraIntent, CAMERA_REQUEST);
                            Log.e("Camera", " Open");
                            popupWindow_Camera.dismiss();  
                            }
                        });

                        btnDismiss.setOnClickListener(new Button.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                // TODO Auto-generated method stub
                                popupWindow_Camera.dismiss();
                            }
                        });

                        popupWindow_Camera.showAsDropDown(holder.imgBtn_Camera, 50, -30);
                    }
                });

有人能帮我解决这个问题吗。谢谢。

//当您打算使用StartActivityResult()时,在完成相机操作后,将调用ActivityResult()方法。。。因此,您应该在onResultActivity()中尝试此“popupWindow\u Camera.Disclose();”。

在单击按钮Camera时,您应该关闭弹出窗口您是否在其他活动中捕获图像,然后使用列表视图返回活动?如果是,然后你应该考虑<代码> StistActuvion结果<代码>,并在方法>代码> > OnActuviyRESUL/<代码>中获取捕获结果。在列表视图中,VISHY问题是在捕获图像并返回到ListVIEW活动后,如何自动解开弹出窗口。并且我已经完成了从相机获取图像的操作。@ Vivek Mishra:I尝试关闭相机按钮上的弹出窗口。但应用程序问题立即关闭并打开,弹出窗口关闭。您是否在调用camera intent后尝试关闭弹出窗口?请参阅我编辑的帖子。在camera按钮中,我尝试关闭弹出窗口。您是否调用了onActivityResult(){}是,但我调用了onActivityResult(){}在主活动中,我已经创建了AllPostAdapter类,它是一个单独的类;我没有找到任何取消();popupwindow的方法。