Android 如何通过onClick启动runonLocationChanged方法
我的Android 如何通过onClick启动runonLocationChanged方法,android,google-maps,Android,Google Maps,我的MapsActivity中有onLocationChanged()方法,每次用户位置移动时都会绘制多段线,但我希望通过Start按钮触发它,这样它就不会每次都在地图上绘制多段线,当绘制多段线结束时,用户单击Stop按钮。然后运行distanceBetween()方法绘制多段线。当用户再次单击开始按钮时,它将.clear()映射,然后重新开始,我已经管理了绘图多段线部分,distanceBetween()部分,但是我不知道如何通过启动和停止按钮触发onLocationChanged()方法中的
MapsActivity
中有onLocationChanged()
方法,每次用户位置移动时都会绘制多段线,但我希望通过Start
按钮触发它,这样它就不会每次都在地图上绘制多段线,当绘制多段线结束时,用户单击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) {
//
}
});