如何调用相机意图拍摄的第一张图像?

时间:2014-12-06 17:40:39

标签: android google-maps

我希望用户在google maps API v2上拍摄各种图片。所有工作都很好,但是当设置setOnInfoWindowClickListener时只能显示摄像机拍摄的最后一张图像而不是第一张图像时,似乎无法显示正确的图像。所以我所做的是使用以下代码创建onSaveInstanceState

private static final String EXTRA_IMAGE = "fileUri";
LatLng theLastImage;

然后:

@Override
    public void onSaveInstanceState(Bundle savedInstanceState) {
        super.onSaveInstanceState(savedInstanceState);
        savedInstanceState.putParcelable(EXTRA_IMAGE, fileUri);

然后onRestore:

@Override
    public void onRestoreInstanceState(Bundle savedInstanceState) {
        super.onRestoreInstanceState(savedInstanceState);
        theLastImage = (LatLng)savedInstanceState.getParcelable(EXTRA_IMAGE);

然后在我的onInfoWindowClick

public void onMapLongClick(final LatLng point) {
      theLastImage=point;

      googleMap.setOnInfoWindowClickListener(new OnInfoWindowClickListener() {

          @Override
          public void onInfoWindowClick(Marker marker) {
              Intent intent = new Intent();

              intent.setAction(Intent.ACTION_VIEW);
              intent.putExtra("fileUri", theLastImage);
               Uri imgUri = Uri.parse("file://" + bitmap + fileUri);
                intent.setDataAndType(imgUri, "image/*");
                startActivity(intent);
            return;
          }
      });

但它仍然只是显示拍摄的最佳图像,无论您在地图上点击哪个标记。

有谁能请我指出正确的方向? 任何帮助将不胜感激。 感谢

0 个答案:

没有答案