1

我正在开发一个应用程序,我使用一个按钮来加载相机,并需要在我的应用程序中附加这些图片。我在加载相机时没有问题,但我无法附加在应用程序中使用相机拍摄的照片。任何人都可以提供一个好的解决方案(提前) Swetha Kaulwar。如何在我的应用程序中附加使用相机拍摄的照片?

+0

附着其中?? – 2012-03-15 06:45:27

+0

你想附加在哪里? – 2012-03-15 06:45:35

+0

在我创建的应用程序中。 – 2012-03-15 06:46:16

回答

2

我这样做,我onActivityResult ...我从拍摄意图PIC减少它的大小,并将其添加到这是后来添加到自定义的ListView列表...我希望这有助于你的一点改进

if (resultCode == Activity.RESULT_OK) { 

      Bundle extras = intent.getExtras(); 
      Bitmap bitmap = (Bitmap) extras.get("data"); 


      int width = bitmap.getWidth(); 
      Log.i("size width:", String.valueOf(width)); 
      int height = bitmap.getHeight(); 
      Log.i("size height:", String.valueOf(height)); 

      float widthPercent = (float) 0.8; 
      float heightPercent = (float) 0.8; 

      float newWidth = bitmap.getWidth() * widthPercent; 
      float newHeight = bitmap.getHeight() * heightPercent; 

      while (newWidth > 250 || newHeight > 250) { 

      newWidth = newWidth * widthPercent; 
      Log.i("size width:", String.valueOf(newWidth)); 
      newHeight = newHeight * heightPercent; 
      Log.i("size height:", String.valueOf(newHeight)); 
      } 




      // calculate the scale - in this case = 0.4f 
      float scaleWidth = ((float) newWidth)/width; 
      Log.i("new size width:", String.valueOf(scaleWidth)); 
      float scaleHeight = ((float) newHeight)/height; 
      Log.i("new size height:", String.valueOf(scaleHeight)); 

      Matrix matrix = new Matrix(); 

      // resize the bit map 
      matrix.postScale(scaleWidth, scaleHeight); 

      // recreate the new Bitmap 
      Bitmap resizedBitmap = Bitmap.createBitmap(bitmap, 0, 0, 
      width, height, matrix, true); 

      Log.i("new bitmap width:", 
      String.valueOf(resizedBitmap.getWidth())); 
      Log.i("new bitmap height:", 
      String.valueOf(resizedBitmap.getHeight())); 

      App.serviceCallImages.add(resizedBitmap); 

      Adapter.notifyDataSetChanged(); 

      break; 
     } 

继承人我相机意图代码

public void OnCameraOpen(View v) { 

    if (App.serviceCallImages.size() < 2) { 
     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 

     startActivityForResult(intent, CAPTURE_PICTURE_INTENT); 
    } else { 
     Toast.makeText(getApplicationContext(), getString(R.string.MaxPics), 
       Toast.LENGTH_SHORT).show(); 
    } 

} 
相关问题