2017-08-16 61 views
0

在我的应用程序中,我有一个打开相机并捕获图像的按钮。当捕获图像时,我将它设置在ImageView中。 我想添加像whatsapp配置文件图片一样的功能,当我点击它放大的图像时。 为此,我已将onclicklistner设置为ImageView并定义了一个对话框。在ImageView上设置onclickListener查看放大图像

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); 
      } 
     }); 

代码的onActivityResult

@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

而不是使用对话框,你可以按照从Android文档this guide做到这一点。 它所做的是在同一页面上进行2次图像处理,当图像以隐藏的全尺寸显示时,点击小图像时,大图像会显示动画。

0

你有这样的事情

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(); 

      } 
     });