我在这里遇到了问题。我有谷歌地图与我自己的位置和锁定位置现在锁定位置没有问题,但当前位置是。我想在这两个地点之间画一条线。他们都工作,所以没有问题。唯一的问题是:
折线代码
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())
这是我将CURRENT位置坐标显示为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 );
任何人都知道如何让这个工作?如果它不够清楚你告诉我那么我会更清楚地解释它。
答案 0 :(得分:0)
您需要将位置值从onLocationChanged
提取到类变量。例如:
public Location curLoc = new Location();
然后在onLocationChanged()
内,将location
的值传递给curLoc
,如下所示:curLoc=location
然后在您的折线上,使用curLoc.getLatitude()
和curLoc.getLongitude()
我希望这是有帮助的,祝你好运^^