0

近くの場所を取得できますが、mapView で場所を描画するにはどうすればよいですか? 緯度と経度を取得して自分で描画する必要がありますか (ItemizedOverlay など)? もしそうなら、アイコンをどうすればいいですか?drawable を使用できないため、単なる URL です。

このメソッドを使用して、場所のリストを取得します。

public void performSearch() throws IOException {
    HttpRequestFactory httpRequestFactory = createRequestFactory(transport);
    HttpRequest request = httpRequestFactory.buildGetRequest(new GenericUrl(PLACES_SEARCH_URL));

    request.getUrl().put("key", API_KEY);
    request.getUrl().put("location", lat + "," + lng);
    request.getUrl().put("radius", 100);
    request.getUrl().put("types", "pharmacy|hospital");
    request.getUrl().put("sensor", "false");          

    PlacesList places = request.execute().parseAs(PlacesList.class);

    for (Place place : places.results) {
        System.out.println(place.name + " - " + place.icon);
    }
}

public static HttpRequestFactory createRequestFactory(final HttpTransport transport) {
    return transport.createRequestFactory(new HttpRequestInitializer() {
        public void initialize(HttpRequest request) {
            GoogleHeaders headers = new GoogleHeaders();
            headers.setApplicationName("The Day After");
            request.setHeaders(headers);
            JsonHttpParser parser = new JsonHttpParser(new JacksonFactory());
            request.addParser(parser);
        }
    });
}

前もって感謝します

4

1 に答える 1

0

Android の Map API はかなり不足しています。オーバーレイ用に独自のドローアブルを提供する必要があります。怠惰な場合は、Google マップ アプリからそれらを抽出できます ;) このためには、電話のファイル ブラウザーから /System/app/ 内のマップ apk を見つけて、SD カードにコピーするだけです。次に、コンピューターで拡張子を apk から zip に変更すると、素敵なオーバーレイ アイコンを抽出できるようになります。

ただし、これらは Google の IP であるため、独自のものを作成するためのガイドラインとして使用する必要があります。

それが役に立てば幸い。

于 2012-03-24T02:25:02.013 に答える