2017-08-16 62 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(); 

      } 
     });