0

私の主な活動はAddressFinder、ここから始めますAddressController

AddressController ac = new AddressController();

AddressControllerは、場合によっては更新する必要があります。

import android.content.Context;
....
private void updateAddresses() throws IOException {
    Geocoder geocoder = new Geocoder(context);
 for (Address a: address) {
 List<Address> addressIn = geocoder.getFromLocation(a.getLatitude(), 
                                                       a.getLongitude(), 1);
 }
}

今、私はどのコンテキストを使用しなければならないのかわかりません。使い方がわかりません。、、、を試しましたがthis、何も機能しませんでした。さらに、メインアクティビティの( )を使用してAdresscontrollerに引数を与えようとしました。contextgetBaseContext()getApplicationContext()contextgetApplicationContext

4

2 に答える 2

1

私は解決策を得たと思います。主なアクティビティでは、次を使用します。

ac.updateAddr(getApplicationContext());

AddressController で私は変更しました:

public void updateAddr(Context c) throws IOException {
    updateAddresses(c);
}

それが の にコンテキストを与える方法GeocoderですAddressController。正常に動作します。

于 2010-12-08T20:21:32.117 に答える
0

Activityクラスで変数を作成します。

Context con = this;  
... 
Geocoder geocoder = new Geocoder(con);

たぶん別のコンストラクターを使用しますか?:

public Geocoder (Context context, Locale locale)
于 2010-12-08T18:35:53.637 に答える