我的onLocationChanged()
内部有一个MapsActivity
方法,该方法每次移动用户位置时都会绘制折线,但是我希望它由Start
按钮触发,因此它不会每次在Map上绘制图形折线结束,用户单击Stop
按钮。然后对绘制折线运行distanceBetween()
方法。当用户再次单击开始按钮时,它.clear();
在地图上,并重新开始,我已经管理了图形的折线部分,distanceBetween()部分,但是我不知道如何通过开始和停止来触发在onLocationChanged()方法中点击drawpolyline,我该怎么做?
@Override
public void onLocationChanged(Location location) {
if (mGoogleApiClient == null) {
buildGoogleApiClient();
}
latLng = new LatLng(location.getLatitude(), location.getLongitude());
latA = latLng.latitude;
longA = latLng.longitude;
tvlattitude.setText(""+latA);
tvlongitude.setText(""+longA);
listPointsB.add(latLng);
pOptions = new PolylineOptions()
.width(5)
.color(Color.BLUE)
.geodesic(true);
for (int z = 0; z < listPointsB.size(); z++) {
LatLng point = listPointsB.get(z);
pOptions.add(point);
}
line = mMap.addPolyline(pOptions);
// Toast.makeText(this, "Location Changed",Toast.LENGTH_SHORT).show();
}
这是按钮
Button bStart = (Button)findViewById(R.id.btStart);
bStart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
Button bStop = (Button) findViewById(R.id.btStop);
bStop.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//
}
});