Карты Google в android интеграции приложений не перетаскиваются / перемещаются плавно - PullRequest
0 голосов
/ 17 июня 2020

В моем приложении android я динамически интегрирую карту Google в фрагмент нижнего листа, он загружается плавно, но когда я выполняю любую операцию, например, перемещение карты пальцем, перетаскивание маркера, оно не работает плавно, мне приходилось нажимать много раз, чтобы переместить его вправо или влево, и вертикального движения не происходит, пожалуйста, помогите.

// this code is to load fragment inside bottom sheet dialog fragment
if (mapFragment == null) {
                mapFragment = SupportMapFragment.newInstance();
                mapFragment.getMapAsync(this);
            }
            FragmentTransaction transaction = activity
                    .getSupportFragmentManager()
                    .findFragmentByTag(BottomDialogCommon.TAG)
                    .getChildFragmentManager()
                    .beginTransaction();
            // R.id.map is a layout
            transaction.replace(R.id.map, mapFragment).commit();

 @Override
        public void onMapReady(GoogleMap googleMap) {
            //mMap = googleMap;

            // Add a marker in Sydney and move the camera
            LatLng sydney = new LatLng(26.47674, 80.334466);
            googleMap.addMarker(new MarkerOptions().position(sydney).draggable(true).title("Marker in Sydney"));
            googleMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
            googleMap.animateCamera( CameraUpdateFactory.zoomTo( 17.0f ) );
            // Enable the zoom controls for the map
            googleMap.getUiSettings().setZoomControlsEnabled(true);
            googleMap.getUiSettings().setScrollGesturesEnabled(true);
            googleMap.getUiSettings().setZoomGesturesEnabled(true);...

Ответы [ 2 ]

0 голосов
/ 18 июня 2020

Это происходит, когда у вас есть два или более подвижных элемента, вложенных друг в друга. Простое исправление - добавить тег android:nestedScrollingEnabled="true" к первому подвижному элементу. В вашем случае вы хотите добавить это в свой bottomsheetfragment, содержащий ваш MapFragment.

Посмотрите мой репозиторий GitHub для примера ниже.

фрагмент нижнего листа. xml

нижний листDialog. java

enter image description here

0 голосов
/ 17 июня 2020

Это происходит потому, что по умолчанию нижний фрагмент листа может быть отменен. Перетаскивание карты приводит к перемещению фрагмента. Итак, при отображении карты установите для dialog.isCancellable значение false и добавьте настраиваемую кнопку отмены.

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