mapbox / mapbox/mapbox-plugins-android
Should `MarkerViewManager` implement a more 'reactive' camera listener ?
Personne n'a encore pris cette issue.
- Langage dominant
- Java
- Étoiles
- 242
- Forks
- 116
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Hello,
The MarkerViewManager implements the MapView.OnCameraDidChangeListener so updating a MarkerView is only updated after the camera did change, and not while the camera is changing.
The consequence of that is some sluggish MarkerView re-positioning after a camera move, as shown here:

I tried replacing MapView.OnCameraDidChangeListener by MapView.OnCameraIsChangeingListener and had no more updates ?!
I then tried using MapboxMap.OnCameraMoveListener with better results:

https://imgur.com/ZNweZfQ
GPU usage is a tad high, that's why I'm not sending a PR.
Should MarkerViewManager implements a more 'reactive' camera listener ?
PS: on the above gifs, I'm using react-native with:
- https://github.com/react-native-mapbox-gl/maps
- and https://github.com/react-native-community/lottie-react-native for the animated orange markers
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par localiser MarkerViewManager et son implémentation de MapView.OnCameraDidChangeListener, puis comparez son comportement à celui des listeners de caméra mentionnés dans le rapport. Reproduisez le repositionnement saccadé des marqueurs avec la configuration React Native et Lottie liée ; c’est terminé lorsque les mises à jour sont plus fluides sans coût GPU inacceptable.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- android, java
- Domaine
- mobile
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100