Я могу загрузить карту Google во фрагмент Android, который находится в действии. Это работает нормально.
Но теперь я хочу использовать ViewPager для навигации между представлениями (класс android.support.v4.app.Fragment
). Не представляется возможным загрузить com.google.android.gms.maps.MapFragment
в такой фрагмент.
Например, в:
SoleMap.java
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.model.LatLng;
public class SoleMap extends Fragment implements OnMapReadyCallback {
MapFragment gMapFragment;
GoogleMap gMap = null;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.sole_map, container, false);
gMapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.soleViewMap);
gMapFragment.getMapAsync(this);
return view;
}
@Override
public void onMapReady(GoogleMap map) {
gMap = map;
gMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);
gMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new
LatLng(49.39,-124.83), 20));
}
}
Заявление
getFragmentManager().findFragmentById(R.id.holeViewMap);
вызывает ошибку компилятора (несовместимые типы).
Вместо этого я попытался использовать SupportMapFragment, который устраняет ошибки компилятора, но затем, когда я запускаю приложение, оно немедленно завершается с сообщением «Ошибка ввода-вывода: отказано в соединении». Документы Google, похоже, указывают на то, что вам нужна специальная учетная запись «Для работы», чтобы использовать библиотеку поддержки. Это правильно? Если да, то я думаю, что мне не повезло.
Единственный другой способ, который я вижу, — это использовать действия вместо фрагментов для размещения моих представлений, т. е. избавиться от ViewPager.
Какие-либо предложения?