2014-01-22 71 views
0

我在這裏遇到了一些問題。我使用osmdroid來顯示地圖,我需要一些功能,如添加地圖標記和繪製標記之間的路徑。Osmdroid標記不會顯示在按鈕上點擊

有關地圖添加標記我使用這個指令

// Global declaration 
ArrayList<OverlayItem> world_overlay; 
ItemizedIconOverlay<OverlayItem> world_items; 
MapController citymap_controller; 

// this code is in function 
world_overlay = new ArrayList<OverlayItem>(); 
for(int i = 0; i < States.length; ++i) 
{ 
    GeoPoint cur_geo = new GeoPoint(latitude[i], longtitude[i]); 
    OverlayItem cur_item = new OverlayItem(States[i], States[i], cur_geo); 
    world_overlay.add(cur_item); 
} 

world_items = new ItemizedIconOverlay<OverlayItem>(this, world_overlay, null); 
mapView.getOverlays().add(world_items); 

,但我得到了一些奇怪的事情。如果我在函數onCreate中使用這個片段,它可以正常工作,所有標記都被添加。如果我在主屏幕上的按鈕的點擊處理程序中使用此代碼,它不起作用。程序繼續運行沒有任何問題,但標記不顯示。這個處理程序的實現是因爲其他指令工作正常。問題只在於顯示標記。有人知道什麼是錯的嗎?

+0

請將您嘗試的代碼粘貼到點擊處理程序中。我想在此之後,我們可以以某種方式幫助你。粘貼整個.java文件代碼 –

回答

0

add marker and next

mapView.invalidate();