Как я могу назначить оверлейные элементы в список GeoPoints - PullRequest
0 голосов
/ 13 марта 2012

я написал следующие кодировки:

locations.add(new GeoPoint((int)(3.1667652777 * 1E6),(int)(101.70002277 * 1E6)));
locations.add(new GeoPoint((int)(3.16676 * 1E6),(int)(101.6836 * 1E6)));

Примечание: я использую ArrayList для вышеуказанного. Как добавить элемент наложения для указанных мест? Я видел сайт разработки Android с упоминанием:

GeoPoint point2 = new GeoPoint(35410000, 139460000);
OverlayItem overlayitem2 = new OverlayItem(point2, "Sekai, konichiwa!", "I'm in Japan!");

Нужно ли делать что-то похожее, как на веб-сайте, или я могу просто придерживаться своей кодировки?

1 Ответ

0 голосов
/ 14 марта 2012

ItemizedOverlayClass

public class MyItemizedOverlay extends ItemizedOverlay<OverlayItem> {

    private ArrayList<OverlayItem> myOverlays ;

    public MyItemizedOverlay(Drawable defaultMarker) {
        super(boundCenterBottom(defaultMarker));
        myOverlays = new ArrayList<OverlayItem>();
        populate();
    }

    public void addOverlay(OverlayItem overlay){
        myOverlays.add(overlay);
        populate();
    }

    @Override
    protected OverlayItem createItem(int i) {
        return myOverlays.get(i);
    }

    // Removes overlay item i
    public void removeItem(int i){
        myOverlays.remove(i);
        populate();
    }

    // Returns present number of items in list
    @Override
    public int size() {
        return myOverlays.size();
    }


    public void addOverlayItem(OverlayItem overlayItem) {
        myOverlays.add(overlayItem);
        populate();
    }

    @Override
    protected boolean onTap(int index) {
        // TODO Auto-generated method stub
        return null;
    }
}

ActivityClass

private MyItemizedOverlay nearPicOverlay;    
nearPicOverlay = new MyItemizedOverlay(atmPic);
                for (int i = 0; i < length; i++) {
                    nearatms[i] = new OverlayItem(new GeoPoint((int)(latitude) * 1E6),(int)((longitude) * 1E6),"", null);
                    nearPicOverlay.addOverlay(nearatms[i]);
                }

Пожалуйста, проверьте скобки, потому что у меня нет затмения, а просто напечатан напрямую. Надеюсь, это поможет ....

...