diff options
| author | Ognjen Cirkovic <ciraboxkg@gmail.com> | 2022-11-12 18:35:51 +0100 | 
|---|---|---|
| committer | Ognjen Cirkovic <ciraboxkg@gmail.com> | 2022-11-12 18:35:51 +0100 | 
| commit | 7d3b6402cd18d69f31acb0b690e03e3dd8d5d282 (patch) | |
| tree | 1ecb04bf291ca3ce0493eea3d9ac6c2b2bc10917 /Client | |
| parent | a2e36b576eac1f3f7ef6ec185abbb6a7203e0d08 (diff) | |
Dodat search bar na mapi i omogucena pretraga po lokacijama.
Diffstat (limited to 'Client')
| -rw-r--r-- | Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentBrowse.kt | 35 | ||||
| -rw-r--r-- | Client/BrzoDoLokacije/app/src/main/res/layout/fragment_browse.xml | 41 | 
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 | 
