打开一个带有设备图像的弹出窗口

时间:2016-04-03 20:31:45

标签: android google-maps

我是android devlopment的新手,

我想要做的是,我有一张我要在地图上显示的照片列表, 对于每张照片,我将显示一个标记,当点击标记时,将弹出照片本身。

到目前为止我所做的是打开地图并根据照片位置显示标记,我现在已经实现了点击监听器以显示图像

这是我的代码:

googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
            @Override
            public boolean onMarkerClick(Marker marker) {
                // get relevent photo from map
                Photo photo = photoMarkers.get(marker);
                if (photo == null){
                    Log.d("Journee", "photo is null");
                    return false;
                }
                photoPopUp(photo);
                return false;
            }
        })
}


private void photoPopUp(Photo photo) {
    // Inflate the popup
    LayoutInflater inflater = (LayoutInflater)   MapActivity.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View layout = inflater.inflate(R.layout.journal_single_image,     (ViewGroup) findViewById(R.id.single_image_popup));

    // show popup
    PopupWindow imagePopup = new PopupWindow(layout, 300, 370, true);
    imagePopup.showAtLocation(layout, Gravity.CENTER, 0, 0);


    // display the photo
    File imgFile = new File(photo.getPathOnDevice());
    Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
    ImageView imageView = (ImageView) findViewById(R.id.single_image_full);
    if (imageView == null){
        Log.d("Journee", "imageview is null");
    }else {
        imageView.setImageBitmap(myBitmap);
    }
}

这是我的xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1"
android:id="@+id/single_image_popup">

<ImageView
    android:layout_width="105dp"
    android:layout_height="wrap_content"
    android:src="@drawable/image_placeholder"
    android:id="@+id/single_image_full"
    android:layout_gravity="center_horizontal"
    android:layout_weight="0.22" />

</LinearLayout>

单击标记会打开我的弹出窗口,使用默认的图像占位符,但我无法将其替换为我的照片。

在我的代码的最后几行中,我得到的imageView为null

THX

0 个答案:

没有答案