我是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
.有人能帮帮我吗?
我找到了你的问题
只需删除下面的行和
getAcitivity.startActivityForResult( chooser, ACTION_REQUEST_GALLERY);
并记下下面的代码
startActivityForResult( chooser, ACTION_REQUEST_GALLERY);
只需删除getActivity