0

我这里有问题。我有我自己的位置和锁定位置的谷歌地图,现在锁定位置没问题,但当前位置是。我想在这两个位置之间画一条线。他们都工作,所以没有问题。唯一的问题在这里:

折线代码

 Polyline line = googleMap.addPolyline(new PolylineOptions()
    .add(new LatLng(location.getLatitude(), location.getLongitude()), 
         new LatLng(52.01936, 4.39113))
    .width(5)
    .color(Color.RED));

所以我的想法是让这两个相互联系,但我不知道该放什么:

.add(new LatLng(location.getLatitude(), location.getLongitude())

这是我将当前位置坐标显示为 TextView 的代码:

@Override
public void onLocationChanged(Location location) {

    TextView tvLocation = (TextView) findViewById(R.id.tv_location);

    // Getting latitude of the current location
    double latitude = location.getLatitude();

    // Getting longitude of the current location
    double longitude = location.getLongitude();

    // Creating a LatLng object for the current location
    LatLng latLng = new LatLng(latitude, longitude);

    // Showing the current location in Google Map
    googleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));

    // Zoom in the Google Map
    googleMap.animateCamera(CameraUpdateFactory.zoomTo(15));

    // Setting latitude and longitude in the TextView tv_location
    tvLocation.setText("Latitude:" +  latitude  + ", Longitude:"+ longitude );

任何人都知道我怎样才能让它工作?如果你告诉我还不够清楚,那么我解释得更清楚。

4

1 回答 1

0

您需要将位置值从onLocationChanged类变量中提取出来。例如 :

public Location curLoc = new Location();

然后在你的内部onLocationChanged(),传递locationinto的值curLoc,像这样:curLoc=location

然后在你的折线上,使用curLoc.getLatitude()curLoc.getLongitude()

希望对你有帮助,祝你好运^^

于 2013-05-28T17:58:32.377 回答