【发布时间】:2016-04-07 19:31:15
【问题描述】:
如何使用 Picasso 和 Google Marker Custom Icon 来实现这个功能?
我知道如何在图像上使用毕加索,但我不知道如何在底部和边框上添加那个“标记图标”。
Picasso.with(mContext)
.load(url)
.resize(250, 250)
.centerInside()
.into(new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
Marker driver_marker = mMap.addMarker(new MarkerOptions()
.position(new LatLng(Double.parseDouble(lat), Double.parseDouble(lng)))
.icon(BitmapDescriptorFactory.fromBitmap(bitmap))
.title(name)
.snippet(address)
);
@Override
public void onBitmapFailed (Drawable errorDrawable){
}
@Override
public void onPrepareLoad (Drawable placeHolderDrawable){
}
});
}
我在 onBitmapLoaded 中添加了这个:
Paint paint = new Paint();
paint.setColor(Color.YELLOW);
paint.setStrokeWidth(10);
paint.setShadowLayer(5, 0, 1, Color.RED);
Canvas canvas = new Canvas(bitmap);
canvas.drawLine(0, 0, canvas.getWidth(), 0, paint);
canvas.drawLine(0, 0, 0, canvas.getHeight(), paint);
canvas.drawLine(0, canvas.getHeight(), canvas.getWidth(), canvas.getHeight(), paint);
canvas.drawLine(canvas.getWidth(), 0, canvas.getWidth(), canvas.getHeight(), paint);
这似乎添加了边框,但是如何在画布上添加倒金字塔?谢谢,在那之后,我几乎完成了! :D
【问题讨论】:
-
那里没有回答
-
充其量,我能得到的是我从位图制作一个画布,然后我如何用画布创建边框?
-
创建您自己的转换类,将 Paint 对象绘制到 Canvas。你可以从这个开始:gist.github.com/aprock/6213395
-
尝试将anchor设置为driver_marker(Marker)
driver_marker.anchor(0.5f, 0.5f);见here -
好吧,我添加了画布和 Paint,这似乎可以创建边界,现在我需要的是带有画布的倒金字塔。不知道怎么样,哈哈。
标签: android google-maps android-layout google-maps-markers