Merge branch 'develop' into RecyclerView
# Conflicts: # app/src/main/java/com/a1/nextlocation/data/Location.java
This commit is contained in:
@@ -1,14 +1,12 @@
|
||||
package com.a1.nextlocation.data;
|
||||
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.osmdroid.util.GeoPoint;
|
||||
|
||||
public class Location implements Parcelable {
|
||||
public class Location {
|
||||
|
||||
@NonNull
|
||||
private String name;
|
||||
@@ -34,25 +32,6 @@ public class Location implements Parcelable {
|
||||
this(name,getStringFromCoordinates(latCoord,longCoord),description,imageUrl);
|
||||
}
|
||||
|
||||
protected Location(Parcel in) {
|
||||
name = in.readString();
|
||||
coordinates = in.readString();
|
||||
description = in.readString();
|
||||
imageUrl = in.readString();
|
||||
}
|
||||
|
||||
public static final Creator<Location> CREATOR = new Creator<Location>() {
|
||||
@Override
|
||||
public Location createFromParcel(Parcel in) {
|
||||
return new Location(in);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Location[] newArray(int size) {
|
||||
return new Location[size];
|
||||
}
|
||||
};
|
||||
|
||||
@NotNull
|
||||
public String getName() {
|
||||
return name;
|
||||
@@ -107,16 +86,8 @@ public class Location implements Parcelable {
|
||||
return lat1 + "," + long1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int describeContents() {
|
||||
return 0;
|
||||
public GeoPoint convertToGeoPoint() {
|
||||
return new GeoPoint(this.getLat(),this.getLong());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToParcel(Parcel dest, int flags) {
|
||||
dest.writeString(name);
|
||||
dest.writeString(coordinates);
|
||||
dest.writeString(description);
|
||||
dest.writeString(imageUrl);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ package com.a1.nextlocation.fragments;
|
||||
import android.Manifest;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.res.Resources;
|
||||
import android.location.Location;
|
||||
import android.location.LocationManager;
|
||||
import android.os.Bundle;
|
||||
@@ -22,6 +23,7 @@ import androidx.fragment.app.Fragment;
|
||||
import com.a1.nextlocation.R;
|
||||
import com.a1.nextlocation.data.Route;
|
||||
import com.a1.nextlocation.recyclerview.CouponListManager;
|
||||
import com.a1.nextlocation.recyclerview.CustomOverlay;
|
||||
import com.a1.nextlocation.recyclerview.LocationListManager;
|
||||
import com.a1.nextlocation.recyclerview.RouteListManager;
|
||||
|
||||
@@ -29,6 +31,8 @@ import org.osmdroid.api.IMapController;
|
||||
import org.osmdroid.config.Configuration;
|
||||
import org.osmdroid.util.GeoPoint;
|
||||
import org.osmdroid.views.MapView;
|
||||
import org.osmdroid.views.overlay.Overlay;
|
||||
import org.osmdroid.views.overlay.OverlayItem;
|
||||
import org.osmdroid.views.overlay.compass.CompassOverlay;
|
||||
import org.osmdroid.views.overlay.compass.InternalCompassOrientationProvider;
|
||||
import org.osmdroid.views.overlay.mylocation.GpsMyLocationProvider;
|
||||
@@ -93,6 +97,21 @@ public class HomeFragment extends Fragment {
|
||||
mLocationOverlay.enableMyLocation();
|
||||
mapView.getOverlays().add(mLocationOverlay);
|
||||
|
||||
CustomOverlay customOverlay = new CustomOverlay(getResources().getDrawable(R.drawable.ic_baseline_location_on_24),mapView);
|
||||
|
||||
for (com.a1.nextlocation.data.Location l : LocationListManager.INSTANCE.getLocationList()) {
|
||||
GeoPoint p = new GeoPoint(l.getLat(), l.getLong());
|
||||
OverlayItem overlayItem = new OverlayItem(l.getName(),l.getDescription(), p);
|
||||
|
||||
customOverlay.addOverlayItem(overlayItem);
|
||||
Log.d(TAG, "initMap: " + "succes");
|
||||
}
|
||||
|
||||
|
||||
mapView.getOverlays().add(customOverlay);
|
||||
|
||||
|
||||
|
||||
// add the zoom controller
|
||||
IMapController mapController = mapView.getController();
|
||||
mapController.setZoom(15.0);
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.a1.nextlocation.recyclerview;
|
||||
|
||||
import android.graphics.Point;
|
||||
import android.graphics.drawable.Drawable;
|
||||
|
||||
import org.osmdroid.api.IMapView;
|
||||
import org.osmdroid.views.MapView;
|
||||
import org.osmdroid.views.overlay.ItemizedOverlay;
|
||||
import org.osmdroid.views.overlay.OverlayItem;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class CustomOverlay extends ItemizedOverlay<OverlayItem> {
|
||||
private final MapView mapView;
|
||||
private ArrayList<OverlayItem> overlayItems = new ArrayList<>();
|
||||
|
||||
public CustomOverlay(Drawable pDefaultMarker, MapView mapView) {
|
||||
super(pDefaultMarker);
|
||||
this.mapView = mapView;
|
||||
|
||||
}
|
||||
|
||||
public void addOverlayItem(OverlayItem item) {
|
||||
overlayItems.add(item);
|
||||
populate();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected OverlayItem createItem(int i) {
|
||||
return overlayItems.get(i);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int size() {
|
||||
return overlayItems.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onSnapToItem(int x, int y, Point snapPoint, IMapView mapView) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,8 @@ import android.content.Context;
|
||||
|
||||
import com.a1.nextlocation.data.Location;
|
||||
|
||||
import org.osmdroid.util.GeoPoint;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -30,4 +32,5 @@ public enum LocationListManager {
|
||||
LocationLoader locationLoader = new LocationLoader(this.context);
|
||||
this.locationList = locationLoader.load();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user