我的问题是,有谁知道如何设置谷歌地图,打开我的位置和放大视图?
目前,主视图向非洲开放,一路缩小。
所以我已经搜索了好几天,我能找到的只有:
1)您不能在一张谷歌地图中为两件事制作动画(例如放大并转到我的位置)?所以如果我能在设置动画之前弄清楚如何设置缩放,那么这个问题就解决了。这往往是问题,你可以改变一个,但不能同时改变。
2) 我找到了其他可能有用的类,但没有帮助说明如何设置代码以便该类可以操作谷歌地图。
这是迄今为止我一直坚持的代码,有些有效,有些无效。有些我认为以后可能有用。
package com.MYWEBSITE.www;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import android.content.Context;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.view.Menu;
public class MainActivity extends FragmentActivity {
private GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_layout);
map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();
map.setMyLocationEnabled(true);
//LocationSource a = (LocationSource) getSystemService(Context.LOCATION_SERVICE);
//LocationManager b = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
//map.setLocationSource(a);
Criteria criteria = new Criteria();
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
String provider = locationManager.getBestProvider(criteria, false);
Location location = locationManager.getLastKnownLocation(provider);
double lat = location.getLatitude();
double lng = location.getLongitude();
LatLng coordinate = new LatLng(lat, lng);
//CameraPosition.Builder x = CameraPosition.builder();
//x.target(coordinate);
//x.zoom(13);
//Projection proj = map.getProjection();
//Point focus = proj.toScreenLocation(coordinate);
//map.animateCamera(CameraUpdateFactory.newLatLng(coordinate));
map.animateCamera(CameraUpdateFactory.zoomBy(13));
//map.moveCamera(CameraUpdateFactory.newLatLng(coordinate));
////LatLngBounds bounds = mMap.getProjection().getVisibleRegion().latLngBounds;
}
}