在android中的地图视图中绘制某个半径的圆

我想在地图视图上画一个圆.我想要用户输入半径,对于那个半径,我必须在地图上显示圆.之后,我必须在该圈子的某些位置显示标记.

我知道如何在地图视图上显示标记.

请帮助我在地图视图上绘制圆形,并在该圆形边界上显示标记.

这对我来说非常重要,我试图在互联网上找到提示,但我无法做到这一点.请帮助我……..

提前致谢..

解决方法

itemizedoverlay的实现中,从onDraw方法中执行类似于drawCircle的方法
protected void drawCircle(Canvas canvas,Point curScreenCoords) {
    curScreenCoords = toScreenPoint(curScreenCoords);
    int CIRCLE_RADIUS = 50;
    // Draw inner info window
    canvas.drawCircle((float) curScreenCoords.x,(float) curScreenCoords.y,CIRCLE_RADIUS,getInnerPaint());
    // if needed,draw a border for info window
    canvas.drawCircle(curScreenCoords.x,curScreenCoordsy,getBorderPaint());
}

private Paint innerPaint,borderPaint;

public Paint getInnerPaint() {
    if (innerPaint == null) {
        innerPaint = new Paint();
        innerPaint.setARGB(225,68,89,82); // gray
        innerPaint.setAntiAlias(true);
    }
    return innerPaint;
}

public Paint getBorderPaint() {
    if (borderPaint == null) {
        borderPaint = new Paint();
        borderPaint.setARGB(255,82);
        borderPaint.setAntiAlias(true);
        borderPaint.setStyle(Style.stroke);
        borderPaint.setstrokeWidth(2);
    }
    return borderPaint;
}

@Override
protected void onDraw(Canvas canvas) {
    Point p = new Point();
    for(OverlayItem item : items) {
        drawCircle(canvas,getProjection().toPixels(item.getPoint(),p));
    }
}

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...