Change Google Map Offset Center
Google map v3 beta seems to fix it, using padding now properly move pivotX/pivotY for rotation https://developers.google.com/maps/documentation/android-sdk/v3-client-migration
You don't need paddings
Change mappoint X and Y values as you need you can call this where you want! may be inside your onLocationChanged
like changeOffsetCenter(location.getLatitude(),location.getLongitude());
public void changeOffsetCenter(double latitude,double longitude) {
Point mappoint = mGoogleMap.getProjection().toScreenLocation(new LatLng(latitude, longitude));
mappoint.set(mappoint.x, mappoint.y-100); // change these values as you need , just hard coded a value if you want you can give it based on a ratio like using DisplayMetrics as well
mGoogleMap.animateCamera(CameraUpdateFactory.newLatLng(mGoogleMap.getProjection().fromScreenLocation(mappoint)));
}
output :