Parseクラウドから画像をダウンロードし、マップアイコンにロードします。私はピカソを使って画像をビットマップに変換しています。地図のアイコンに画像を読み込む方法が正しいかどうかは初めてわかりません。誰か助けてください!Parseから画像をロード中にNullPointerExceptionが発生しました
markerOpts =
markerOpts.title(post.getText());
String uri = post.getImage().getUrl();
final MarkerOptions finalMarkerOpts = markerOpts;
Picasso.with(context)
.load(uri)
.into(new Target() {
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) {
/* Save the bitmap or do something with it here */
//Set it in the ImageView
finalMarkerOpts.icon(BitmapDescriptorFactory.fromBitmap(bitmap));
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
}
});
// }
// Add a new marker
Marker marker = mapFragment.getMap().addMarker(markerOpts);
mapMarkers.put(post.getObjectId(), marker);
// if (post.getObjectId().equals(selectedPostObjectId)) {
// marker.showInfoWindow();
// selectedPostObjectId = null;
// }
}
// Clean up old markers.
cleanUpMarkers(toKeep);
}
});
}
解析モデル
public ParseFile getImage(){
return getParseFile("Image");
}
Logcat:。
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.parse.ParseFile.getUrl()' on a null object reference
at com.google.mywall.MainActivity$2.done(MainActivity.java:688)
at com.google.mywall.MainActivity$2.done(MainActivity.java:627)
ここにログキャストゴミ箱があります。 –
'post.getImage()。getUrl();'これをチェックし、try catchを実行します。 –
@Clara parsefileのログを作成するにはどうすればよいですか? – Savita