Fragmentを拡張し、LocationListenerを実装するクラスがあります。私が書くとき
LocationManager myLocalManager =
(LocationManager)getSystemService(Context.LOCATION_SERVICE);
getSystemService
メソッドがFragmentのメソッドではないため、コンパイル時エラーが発生します。
を作成するために何ができますLocationManager
か?
Fragmentを拡張し、LocationListenerを実装するクラスがあります。私が書くとき
LocationManager myLocalManager =
(LocationManager)getSystemService(Context.LOCATION_SERVICE);
getSystemService
メソッドがFragmentのメソッドではないため、コンパイル時エラーが発生します。
を作成するために何ができますLocationManager
か?
フラグメント内では、これを単に呼び出します。
LocationManager mgr =
(LocationManager)getActivity().getSystemService(Context.LOCATION_SERVICE);
getSystemService()
つまり、アクティビティを取得してそこから電話をかけるだけです。
編集: API 28以降
、このgetActivity
メソッドは非推奨になっているため、次のものを使用できます。
LocationManager mgr =
(LocationManager)getContext().getSystemService(Context.LOCATION_SERVICE);
このコードスニペットを試してみてください。
コード:
LocationManager locationManager = (LocationManager)
getContext().getSystemService(Context.LOCATION_SERVICE);