Я делаю простой просмотр карты на острове Ява в Индонезии. В настоящее время у меня проблема с созданием фрагмента карты, в частности, в getMapASync , возвращающем ссылку на нулевой указатель, в соответствии с logcat.
Вот мой код:
private GoogleMap java__island_map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
SupportMapFragment javamapFragment = (SupportMapFragment) this.getSupportFragmentManager().
findFragmentById(R.id.java_island_map);
javamapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
java__island_map = googleMap;
LatLng JavaIsland = new LatLng(-7.50166466, 111.257832302);
java__island_map.addMarker(new MarkerOptions().position(JavaIsland).title("Java Island"));
java__island_map.moveCamera(CameraUpdateFactory.newLatLng(JavaIsland));
}
Поскольку это не форма дочернего фрагмента, я попытался использовать getChildSupportFragment безрезультатно. Затем я попытался исправить фрагмент, чтобы он стал обычным MapFragment , не работает. Вот мой XML-код:
<fragment
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/java_island_map"
class="com.google.android.gms.maps.SupportMapFragment"
android:layout_gravity="center">
</fragment>
<ScrollView .... etc
Что я тут не так сделал? Это мне очень поможет, так же как и для других пользовательских интерфейсов на основе карт.