私のプログラムでは、GPSでロケーションリストナーを使用して、ユーザーの現在の緯度/経度のポイントを取得しています。
GPSが座標を取得している間に進行状況ダイアログを実装したいと思います。
現在、onCreate()メソッド内でprogressDialogを呼び出し、ロケーションオブジェクトがnullでなくなったら、progressdialogを破棄します。
残念ながら、現時点ではダイアログがまったく表示されません。
これが私のコードです:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationListener = new GPSLocationListener();
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
***** Call a new progress dialog object when the locationManager is gaining lat/long*****
d = ProgressDialog.show(this, "GPS Posistion", "Gaining GPS posistion...", false, true);
}
private class GPSLocationListener implements LocationListener
{
@Override
public void onLocationChanged(Location location) {
if (location != null) {
***** Once lat/long is found, dismiss the progress dialog*****
d.dismiss();
Double latToPass = location.getLatitude();
Double longToPass = location.getLongitude();
locationManager.removeUpdates(locationListener);
locationManager = null;
Intent changesStart = new Intent("com.example.flybaseapp.PassLatLong");
changesStart.putExtra("passedLat", latToPass);
changesStart.putExtra("passedLong", longToPass);
startActivity(changesStart);
}
}