ошибка: несовместимые типы: фрагмент не может быть преобразован в SupportMapFragment - PullRequest
0 голосов
/ 27 июня 2019

введите описание изображения здесь Я хочу добавить карту Google для моего проекта.я пытаюсь сделать это, тогда у меня есть эта проблема

public class DriverMapActivity extends FragmentActivity implements OnMapReadyCallback {

    private GoogleMap mMap;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_driver_map3);
        // 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);

xml

<?xml version="1.0" encoding="utf-8"?>
<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=".DriverMapActivity"
    android:name="com.google.android.gms.maps.SupportMapFragment" />

Ответы [ 2 ]

0 голосов
/ 27 июня 2019

У меня были некоторые проблемы с этим. Попробуйте использовать обычный FrameLayout и добавьте фрагмент по коду.

0 голосов
/ 27 июня 2019

попробуйте

Шаг 1 - в вашем XML-файле

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="5dp"
        />

Шаг - 2 - В вашем Java-файле

Используйте этот класс import com.google.android.gms.maps.SupportMapFragment;

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
            .findFragmentById(R.id.map);
mapFragment.getMapAsync(new OnMapReadyCallback() {
        @Override
        public void onMapReady(GoogleMap googleMap) {
            Log.d("tag", "onMapReady");
        }
    });
mapFragment.getMapAsync( this);

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...