Skip to content

Commit fde36c2

Browse files
authored
Merge pull request #9 from pulkit4tech/Animate_Map_camera
#7 : Added Camera Animation in Maps
2 parents 46503d2 + ce40360 commit fde36c2

File tree

4 files changed

+32
-17
lines changed

4 files changed

+32
-17
lines changed

app/src/main/java/com/pulkit4tech/privy/MainActivity.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
package com.pulkit4tech.privy;
22

33
import android.content.Intent;
4-
import android.support.v4.app.FragmentManager;
5-
import android.support.v4.app.FragmentTransaction;
64
import android.support.v7.app.AppCompatActivity;
75
import android.os.Bundle;
86

97
public class MainActivity extends AppCompatActivity {
108

11-
private PrivyMapsActivity mapFragement;
129
public static final String DEBUG = "DEBUGGER";
1310

1411
@Override

app/src/main/java/com/pulkit4tech/privy/PrivyMapsActivity.java

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,19 @@
22

33
import android.content.Context;
44
import android.content.pm.PackageManager;
5-
import android.location.Criteria;
6-
import android.location.Location;
7-
import android.location.LocationManager;
85
import android.os.Bundle;
96
import android.support.v4.app.ActivityCompat;
107
import android.support.v7.app.ActionBarActivity;
118
import android.util.Log;
129
import android.widget.Toast;
1310

11+
import com.google.android.gms.maps.CameraUpdate;
1412
import com.google.android.gms.maps.CameraUpdateFactory;
1513
import com.google.android.gms.maps.GoogleMap;
1614
import com.google.android.gms.maps.OnMapReadyCallback;
1715
import com.google.android.gms.maps.SupportMapFragment;
1816
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
17+
import com.google.android.gms.maps.model.CameraPosition;
1918
import com.google.android.gms.maps.model.LatLng;
2019
import com.google.android.gms.maps.model.Marker;
2120
import com.google.android.gms.maps.model.MarkerOptions;
@@ -29,6 +28,8 @@ public class PrivyMapsActivity extends ActionBarActivity implements OnMapReadyCa
2928
private GoogleMap mMap;
3029
private Context mContext;
3130
private Marker myLocationMarker;
31+
private CameraPosition MY_LOCATION_CAMERA_POS;
32+
private static final int CAMERA_ANIMATION_DURATION = 2500;
3233

3334
// My Location
3435
private LocationData myLocationData;
@@ -99,15 +100,42 @@ public boolean onMyLocationButtonClick() {
99100
myLocationMarker.remove();
100101
}
101102

103+
MY_LOCATION_CAMERA_POS = new CameraPosition.Builder()
104+
.target(myLocationData.getLatLng())
105+
.zoom(15.0f)
106+
.bearing(0)
107+
.tilt(25)
108+
.build();
109+
102110
myLocationMarker = mMap.addMarker(new MarkerOptions().position(myLocationData.getLatLng()).title("My Location"));
103-
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(myLocationData.getLatLng(), 15.0f));
111+
112+
//animate camera
113+
onGoToMyLocation();
104114
Log.d(DEBUG, myLocationData.getLatLng().toString());
105115
}
106116
return true;
107117
}
108118
});
109119
}
110120

121+
private void onGoToMyLocation() {
122+
changeCamera(CameraUpdateFactory.newCameraPosition(MY_LOCATION_CAMERA_POS), new GoogleMap.CancelableCallback() {
123+
@Override
124+
public void onFinish() {
125+
Toast.makeText(mContext,"Animation Finished",Toast.LENGTH_SHORT).show();
126+
}
127+
128+
@Override
129+
public void onCancel() {
130+
Toast.makeText(mContext,"Animation Canceled",Toast.LENGTH_SHORT).show();
131+
}
132+
});
133+
}
134+
135+
private void changeCamera(CameraUpdate update, GoogleMap.CancelableCallback callback){
136+
mMap.animateCamera(update,CAMERA_ANIMATION_DURATION,callback);
137+
}
138+
111139
private boolean checkLocationEnabledPermission() {
112140
if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
113141
// TODO: Consider calling

app/src/main/java/com/pulkit4tech/privy/Utilities/LocationServices.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import android.location.LocationListener;
1010
import android.os.Bundle;
1111
import android.support.v4.app.ActivityCompat;
12-
import android.util.Log;
1312
import android.widget.Toast;
1413

1514

@@ -18,11 +17,6 @@
1817
import com.pulkit4tech.privy.data.LocationData;
1918

2019
import static android.content.Context.LOCATION_SERVICE;
21-
import static com.pulkit4tech.privy.MainActivity.DEBUG;
22-
23-
/**
24-
* Created by pulkit on 01/01/17.
25-
*/
2620

2721
public class LocationServices implements LocationListener {
2822

app/src/main/java/com/pulkit4tech/privy/data/LocationData.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,6 @@
22

33
import com.google.android.gms.maps.model.LatLng;
44

5-
/**
6-
* Created by pulkit on 01/01/17.
7-
*/
8-
95
public class LocationData {
106
private LatLng latLng;
117
private String Description;

0 commit comments

Comments
 (0)