aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt35
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml41
2 files changed, 71 insertions, 5 deletions
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt
index ec6673c..08d0fdd 100644
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt
@@ -13,11 +13,15 @@ import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import android.widget.Button
+import android.widget.EditText
+import android.widget.Toast
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import androidx.fragment.app.Fragment
import com.example.brzodolokacije.R
import com.example.brzodolokacije.Services.GeocoderHelper
+import com.google.android.material.floatingactionbutton.FloatingActionButton
import org.osmdroid.config.Configuration
import org.osmdroid.tileprovider.tilesource.TileSourceFactory
import org.osmdroid.util.GeoPoint
@@ -37,6 +41,8 @@ class FragmentBrowse : Fragment(R.layout.fragment_browse) {
var mRotationGestureOverlay:RotationGestureOverlay?=null
var mScaleBarOverlay: ScaleBarOverlay?=null
var mCompassOverlay:CompassOverlay?=null
+ private lateinit var searchButton:FloatingActionButton
+ private lateinit var searchBar: EditText
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@@ -53,6 +59,14 @@ class FragmentBrowse : Fragment(R.layout.fragment_browse) {
map=v.findViewById(R.id.FragmentBrowseMapView) as MapView
map!!.setTileSource(TileSourceFactory.MAPNIK);
setUpMap()
+ searchButton=v.findViewById<View>(R.id.FragmentBrowseSearchButton) as FloatingActionButton
+ searchBar=v.findViewById<View>(R.id.FragmentBrowseSearchBar) as EditText
+
+ searchButton.setOnClickListener{
+ searchMap()
+ }
+
+
return v
}
@@ -77,8 +91,7 @@ class FragmentBrowse : Fragment(R.layout.fragment_browse) {
mLocationOverlay = MyLocationNewOverlay(GpsMyLocationProvider(context), map)
mLocationOverlay!!.enableMyLocation()
map!!.getOverlays().add(this.mLocationOverlay)
- var res= GeocoderHelper.getInstance()
- Log.d("Main",res!!.getFromLocationName("Paris",1)[0].countryName)
+
//start point
val startPoint = GeoPoint(44.0107,20.9181)//dodati nasu lokaciju TODO
mapController.setCenter(startPoint)
@@ -125,6 +138,24 @@ class FragmentBrowse : Fragment(R.layout.fragment_browse) {
//your codes here
}
}
+ fun searchMap(){
+ var geocoder= GeocoderHelper.getInstance()
+ //Log.d("Main",geocoder!!.getFromLocationName("Paris",1)[0].countryName)
+ var locString=searchBar.text.toString().trim()
+ if(locString==null || locString=="")
+ Toast.makeText(requireContext(),"Unesite naziv lokacije",Toast.LENGTH_SHORT)
+ else{
+ var result=geocoder!!.getFromLocationName(locString,1)[0]
+ if(result==null)
+ Toast.makeText(requireContext(),"Nepostojeca lokacija",Toast.LENGTH_SHORT)
+ else{
+ //move to spot
+ map!!.controller.animateTo(GeoPoint(result.latitude,result.longitude))
+
+
+ }
+ }
+ }
} \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml
index a811522..cdccaa6 100644
--- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml
+++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml
@@ -1,14 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Fragments.FragmentBrowse">
+
+
+
<org.osmdroid.views.MapView
android:id="@+id/FragmentBrowseMapView"
android:layout_width="fill_parent"
- android:layout_height="fill_parent"/>
+ android:layout_height="fill_parent"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="@+id/FragmentBrowseSearchBar" />
+
+ <com.google.android.material.textfield.TextInputEditText
+ android:id="@+id/FragmentBrowseSearchBar"
+ android:layout_width="250dp"
+ android:layout_height="55dp"
+ android:layout_marginTop="40dp"
+ android:background="@drawable/rounded_white_button_login"
+ android:ems="10"
+ android:hint=" Pretraga"
+ android:inputType="textPersonName"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" />
+ <com.google.android.material.floatingactionbutton.FloatingActionButton
+ android:id="@+id/FragmentBrowseSearchButton"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_alignParentStart="true"
+ android:backgroundTint="#FFFFFF"
+ android:clickable="true"
+ android:focusable="true"
+ android:tint="#FFFFFF"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toEndOf="@+id/FragmentBrowseSearchBar"
+ app:layout_constraintTop_toTopOf="@+id/FragmentBrowseSearchBar"
+ app:rippleColor="#FFFFFF"
+ app:srcCompat="@android:drawable/ic_search_category_default" />
-</FrameLayout> \ No newline at end of file
+</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file