Tworzę widok mapy OSMdroid w mojej MapActivity.java i chcę dodać przyciski pop-upy & - Wiem tylko, jak to się robi w .xml, ale ponieważ ten MapView nie używa żadnego .xml jestem zdziwiony, jak mogę umieścić przyciski (obraz) w moim kodzie java.Przyciski nad widokiem mapy
@Override
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Setup base map
final RelativeLayout rl = new RelativeLayout(this);
CloudmadeUtil.retrieveCloudmadeKey(getApplicationContext());
final MapView osmv = new MapView(this, 256);
myMapController = osmv.getController();
rl.addView(osmv, new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT));
osmv.setBuiltInZoomControls(true);
osmv.setMultiTouchControls(true);
myLocationoverlay = new MyLocationOverlay(this, osmv);
//*snip* setup of map, mapcontrollers, tiles etc...
osmv.getOverlays().add(tilesOverlay);
osmv.getOverlays().add(myLocationoverlay);
this.setContentView(rl);
}
edit: Mówię o przycisku jak
<ImageButton
android:id="@+id/map_goto_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/goto_location"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:id="@+id/goto_location" />
Od dodania 'MapView' do' RelativeLayout', po prostu dodaj wszystkie inne elementy interfejsu użytkownika do tego samego kontenera. Po prostu dodaj je po dodaniu 'MapView', aby były rysowane na górze. Możesz albo skonfigurować wszystkie elementy interfejsu użytkownika w kodzie, albo zadeklarować je w xml i użyć 'LayoutInflater', aby je nadmuchać. Nie zapomnij dodać ich po utworzeniu/nadmuchaniu. –