我有一个简单的活动,其中包含以下细分代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
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:gravity="center_horizontal"
android:orientation="horizontal"
android:id="@+id/title_complex">
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.MapFragment"
tools:context=".MainActivity" />
</LinearLayout>
答案 0 :(得分:3)
在与GoogleMap对象进行互动之前,您需要确认可以实例化对象,并确保Google Play服务组件已正确安装在目标设备上。您可以通过调用
来验证GoogleMap是否可用MapFragment.getMap()
或
MapView.getMap()
方法并检查返回的对象是否为空。
确认GoogleMap可用性的测试示例如下所示。可以从 onCreate()和 onResume()阶段调用此方法,以确保地图始终可用。
private void setUpMapIfNeeded() {
// Do a null check to confirm that we have not already instantiated the map.
if (mMap == null) {
mMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
.getMap();
// Check if we were successful in obtaining the map.
if (mMap != null) {
// The Map is verified. It is now safe to manipulate the map.
}
}
}
参考文献 - https://developers.google.com/maps/documentation/android/map
答案 1 :(得分:1)