【发布时间】:2021-02-23 06:14:14
【问题描述】:
【问题讨论】:
标签: android google-maps
【问题讨论】:
标签: android google-maps
您可以使用地图片段或地图活动在地图中显示地图 首先在xml中添加片段:
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/map"
tools:context=".MapsActivity"
android:name="com.google.android.gms.maps.SupportMapFragment" />
第二次实现 OnMapReadyCallback 并覆盖 onMapReady 函数
public class MapsActivity extends AppCompatActivity implements OnMapReadyCallback {
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// Add a marker in Sydney and move the camera
LatLng sydney = new LatLng(-34, 151);
mMap.addMarker(new MarkerOptions()
.position(sydney)
.title("Marker in Sydney"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
}
}
android开发者网站here中描述的步骤
请注意,要在您的应用程序中使用显示 Google 地图,您需要 API KEY,您可以在 Google Developer Console 中生成您的密钥,这是link
【讨论】:
在从 Firestore 中获得 lat long 之后,试试这个代码。
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(latlong);
markerOptions.title(latlong.latitude + " : " + latlong.longitude);
googleMap.clear();
googleMap.animateCamera(CameraUpdateFactory.newLatLng(latlong));
googleMap.addMarker(markerOptions);
【讨论】: