aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOgnjen Cirkovic <ciraboxkg@gmail.com>2022-11-29 08:15:12 +0100
committerOgnjen Cirkovic <ciraboxkg@gmail.com>2022-11-29 08:15:12 +0100
commit860fdc934f09f4384d88df426dc1969cad151218 (patch)
treec0680ad4dfe2119c824b6180b20a79b1d98a5223
parent10caf0c6f1efbfad03345ad9b94bc6ae3a4fc0f2 (diff)
Omoguceno da korisnik moze da pretrazi vec postojecu lokacije i da promeni lokaciju pin-a, onda ce biti pitan da doda tu lokaciju kao novu tako sto ce da unese ime. Pinovi se smenjuju.
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/MapsActivity.kt35
1 files changed, 34 insertions, 1 deletions
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/MapsActivity.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/MapsActivity.kt
index fa3f06b..25a2b4b 100644
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/MapsActivity.kt
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/MapsActivity.kt
@@ -39,6 +39,7 @@ import org.osmdroid.util.GeoPoint
import org.osmdroid.views.MapView
import org.osmdroid.views.Projection
import org.osmdroid.views.overlay.ItemizedIconOverlay
+import org.osmdroid.views.overlay.Marker
import org.osmdroid.views.overlay.Overlay
import org.osmdroid.views.overlay.OverlayItem
import org.osmdroid.views.overlay.ScaleBarOverlay
@@ -205,15 +206,47 @@ class MapsActivity : AppCompatActivity() {
selectedLocation=responseLocations!!.find { location -> location.name==selected }
Log.d("main",selectedLocation.toString())
confirmButton.visibility=View.VISIBLE
+ val locGeopoint=GeoPoint(selectedLocation!!.latitude,selectedLocation!!.longitude)
+ map!!.controller.animateTo(locGeopoint)
+ val marker = ContextCompat.getDrawable(this@MapsActivity, R.drawable.ic_baseline_add_location_24);
+ locLatitude=selectedLocation!!.latitude
+ locLongitude=selectedLocation!!.longitude
+
+
+ val overlayArray = ArrayList<OverlayItem>()
+ val mapItem = OverlayItem(
+ "", "", locGeopoint
+ )
+ mapItem.setMarker(marker)
+ overlayArray.add(mapItem)
+ if (anotherItemizedIconOverlay == null) {
+ anotherItemizedIconOverlay =
+ ItemizedIconOverlay(applicationContext, overlayArray, null)
+ map!!.overlays.add(anotherItemizedIconOverlay)
+ map!!.invalidate()
+ } else {
+ map!!.overlays.remove(anotherItemizedIconOverlay)
+ map!!.invalidate()
+ anotherItemizedIconOverlay =
+ ItemizedIconOverlay(applicationContext, overlayArray, null)
+ map!!.overlays.add(anotherItemizedIconOverlay)
+ }
+
})
}
+ var anotherItemizedIconOverlay: ItemizedIconOverlay<OverlayItem>? = null
fun returnValue(){
val intent = intent
val bundle = Bundle()
if(selectedLocation==null)
return
+ if(selectedLocation!!.latitude!=locLatitude || selectedLocation!!.longitude!=locLongitude)
+ {
+ addLocation()
+ return
+ }
bundle.putString("locationId",selectedLocation!!._id)
intent.putExtras(bundle)
setResult(RESULT_OK, intent)
@@ -296,7 +329,7 @@ class MapsActivity : AppCompatActivity() {
val touchOverlay: Overlay = object : Overlay(this) {
- var anotherItemizedIconOverlay: ItemizedIconOverlay<OverlayItem>? = null
+
override fun onSingleTapConfirmed(e: MotionEvent, mapView: MapView): Boolean {
val marker = ContextCompat.getDrawable(this@MapsActivity, R.drawable.ic_baseline_add_location_24);
val proj: Projection = mapView.projection