Android - 相机变焦不起作用

时间:2013-11-22 15:25:59

标签: android android-camera android-canvas

我创建了一个应用。我在latitude上随机生成longitudeGoogleMap并将该值传递给下一页..即CameraPage。但是,在CameraPage上,引脚没有像地图上那样正常掉落..我已经实现了camera-zoom和其他方法,但仍然没有工作..

请检查屏幕截图..

MapPage

enter image description here

CameraPage

enter image description here

是否有任何解决方案可以在没有外部变焦控制的情况下缩放相机上的引脚?

当CameraPage加载时,它应默认缩放..

修改::

CODE ::

ArrayList<Point> props = new ArrayList<Point>();
            props.add(new Point(a_latitude, a_longitude, a_username));
            props.add(new Point(b_latitude, b_longitude, b_username));
            props.add(new Point(c_latitude, c_longitude, c_username));
            props.add(new Point(d_latitude, d_longitude, d_username));
            props.add(new Point(e_latitude, e_longitude, e_username));
            props.add(new Point(f_latitude, f_longitude, f_username));
            props.add(new Point(g_latitude, g_longitude, g_username));
            props.add(new Point(h_latitude, h_longitude, h_username));
            props.add(new Point(i_latitude, i_longitude, i_username));
            props.add(new Point(j_latitude, j_longitude, j_username));


    mPaint.setColor(Color.BLACK);
    mPaint.setTextSize(30);
    mPaint.setStrokeWidth(DpiUtils.getPxFromDpi(getContext(), 2));
    mPaint.setAntiAlias(true);      


    mSpots = new Bitmap[props.size()];
    for (int i = 0; i < mSpots.length; i++) 
        mSpots[i] = BitmapFactory.decodeResource(context.getResources(), R.drawable.google_pin_new);

Point Class ::

public class Point {
public double longitude = 0f;
public double latitude = 0f;
public String description;


public Point(double d, double e, String string) {
    // TODO Auto-generated constructor stub
    this.latitude = d;
    this.longitude = e;
    this.description = string;

  } 

}

1 个答案:

答案 0 :(得分:5)

而不是使用经度和纬度来绘制你的观点。

使用功能toScreenLocation。例如,以下行将返回Point,表示应绘制位置标记的坐标。

android.graphics.Point p = mMap.getProjection().toScreenLocation(location);
props.add(new Point(p.X, p.Y, a_username));