2
Baidu Map을 사용하여 그림 URL이있는 서버에서 가져온 상점을 표시합니다. Glide를 사용하여지도 아이콘을 설정합니다.글라이드 콜백 방법에 매개 변수를 전달하는 방법은 무엇입니까?
다음은지도에 마커를 추가하는 방법입니다.
private void setMarks(List<ShopList> shops) {
for(ShopList shopItem : shops){
double latitude = shopItem.getLat();
double longitude = shopItem.getLng();
LatLng latLng = new LatLng(latitude,longitude);
String shopName = shopItem.getName();
OverlayOptions textOption = new TextOptions()
.text(shopName)
.fontSize(50)
.position(latLng);
mBaiduMap.addOverlay(textOption);
Glide.with(mContext.getApplicationContext())
.load(shopItem.getCategory_image())
.asBitmap()
.placeholder(R.drawable.ic_shop_image_loading)
.error(R.drawable.ic_shop_image_load_error)
.override(SizeUtils.dip2px(mContext,128),SizeUtils.dip2px(mContext,128))
.centerCrop()
.into(target);
}
}
여기 글라이드 콜백 코드이다.
private SimpleTarget<Bitmap> target = new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
BitmapDescriptor descriptor = BitmapDescriptorFactory.fromBitmap(resource);
Marker marker = (Marker) mBaiduMap.addOverlay(new MarkerOptions().position(latLng).icon(descriptor));
mMarkers.add(marker);
}
};
내가 latLang의 매개 변수를 제공 할 수없는, 그래서 onResourceReady에 마커를 init을 할 수없는, 또한 mMarkers에 마커를 추가 할 수 없습니다. latLang을 특정 비트 맵과 연관 시키려면 어떻게해야합니까?
덕분에 대답하기를. 나는 캡슐화에 대한 심층적 인 개념을 가지고있다. – sunpeijie