2013-12-17 42 views
0

我是Android新手,我已经完成了大量训练,但图像无法从相机加载。下面是我从相机或画廊捕捉图像代码:如何从相机捕获图像,在片段中,

public void showDiloag(){ 
    Dialog dialog = new Dialog(getActivity()); 
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 
    builder.setTitle("Choose Image Source"); 
    builder.setItems(new CharSequence[] { "Gallery", "Camera" }, 
      new DialogInterface.OnClickListener() { 

       @Override 
       public void onClick(DialogInterface dialog, 
         int which) { 
        switch (which) { 
        case 0: 
         Intent intent = new Intent(
           Intent.ACTION_GET_CONTENT); 
         intent.setType("image/*"); 

         Intent chooser = Intent 
           .createChooser(
             intent, 
             "Choose a Picture"); 
         getAcitivity.startActivityForResult(
           chooser, 
           ACTION_REQUEST_GALLERY); 

         break; 

        case 1: 
         Intent cameraIntent = new Intent(
           android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
         startActivityForResult(
           cameraIntent, 
           ACTION_REQUEST_CAMERA); 

         break; 

        default: 
         break; 
        } 
       } 
      }); 

    builder.show(); 
    dialog.dismiss(); 
} 

而对于显示器的照片:

 @Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    System.out.println("OnActivityResult"); 
    if (resultCode == getActivity().RESULT_OK) { 
     if (requestCode == Utils.ACTION_REQUEST_GALLERY) { 
      // System.out.println("select file from gallery "); 
      Uri selectedImageUri = data.getData(); 
      String tempPath = JuiceAppUtility.getPath(
        selectedImageUri, getActivity()); 

      Bitmap bm = JuiceAppUtility 
        .decodeFileFromPath(tempPath); 
      imgJuice.setImageBitmap(bm); 
     } else if (requestCode == Utils.ACTION_REQUEST_CAMERA) { 
      Bitmap photo = (Bitmap) data.getExtras() 
        .get("data"); 
      imgJuice.setImageBitmap(photo); 
     } 
    } 
} 

而且图像从相机捕获并从图库中选择,但它不会在ImageView加载。有人可以帮我吗?

+0

可以请你给我JuiceAppUtility。 getPath()函数? –

回答

5

雅,我发现你的问题

只是删除以下线和

  getAcitivity.startActivityForResult(
          chooser, 
          ACTION_REQUEST_GALLERY); 

,并写下下面的代码

  startActivityForResult(
          chooser, 
          ACTION_REQUEST_GALLERY); 

只是删除getActivity

+0

让我做一些检查 – user2107365

+0

你确定我确定它会工作 –

+0

哦谢谢@Siddhpura艾米特这是工作:) – user2107365

相关问题