有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在ImageView上设置onclickListener以查看放大的图像

在我的应用程序中,我有一个按钮,可以打开相机并捕捉图像。当我拍摄图像时,我在ImageView中进行了设置。 我想添加一个像whatsapp profile pics这样的功能,比如当我点击放大的图像时。 为此,我为ImageView设置了一个onclicklistner,并定义了一个对话框

imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view)
            {
                Dialog imagedialog = new Dialog(MainActivity.this);
                imagedialog.setContentView(R.layout.imagedialog);
                ImageView photo = (ImageView) imagedialog.findViewById(R.id.photoenlarge);

            }
        });

在该对话框中,我有一个ImageView,它将显示放大的图像

我的相机代码:

btncapture.setOnClickListener(new View.OnClickListener()
        {
            @Override
            public void onClick(View view)
            {
                Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(cameraIntent,CAMERA_REQUEST);
            }
        });

{}的代码:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data)
    {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == CAMERA_REQUEST && resultCode == Activity.RESULT_OK)
        {
            Bitmap photo = (Bitmap) data.getExtras().get("data");
            imageView.setImageBitmap(photo);

        }
    }

imageView.setOnClickListener方法中,如何使用捕获的图像设置ImageView photo


共 (2) 个答案

  1. # 1 楼答案

    你必须做这样的事

    imageView.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view)
                {
                    Dialog imagedialog = new Dialog(MainActivity.this);
                    imagedialog.setContentView(R.layout.imagedialog);
                    ImageView photo = (ImageView) imagedialog.findViewById(R.id.photoenlarge);
    
              // get the applied image from the imageview as a bitmap
    
                   Bitmap image=((BitmapDrawable)imageView.getDrawable()).getBitmap();
    
               // set bitmap image to dialog image view
               photo.setImageBitmap(image);
              imagedialog.show();
    
                }
            });
    
  2. # 2 楼答案

    您可以按照android文档中的this guide操作,而不是使用对话框。 它所做的是在同一个页面上有两个ImageView,其中一个显示完全隐藏的图像,当单击小的一个时,大的一个显示动画