NativeScript / NativeScript/plugins
Android crash when displaying a custom marker info window using markerInfoContents
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 206
- Fork
- 123
- Merge medio
- 2g 1h
- PR unite (30g)
- 1
Descrizione
Android crash when displaying a custom marker info window using markerInfoContents
Using markerInfoContents to display a custom NativeScript view causes Android to crash on API 36, API 37, and a physical Android device.
Error
java.lang.IllegalStateException:
The specified child already has a parent.
You must call removeView() on the child's parent first.
Cause
In packages/google-maps/index.android.ts, the plugin adds info.view to a GridLayout container but returns the child:
container.addChild(info.view)
return info.view.nativeView
Because the returned child already belongs to the container, Google Maps attempts to attach an already-parented view.
Suggested fix
Return the wrapper container instead:
return container.nativeView
The custom information-window view should display without crashing when repeatedly opening markers.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia in packages/google-maps/index.android.ts, nella gestione di markerInfoContents che aggiunge info.view a un GridLayout. Verifica che la vista nativa restituita sia il contenitore wrapper, quindi riproduci il problema aprendo ripetutamente i marker e conferma che le finestre informative personalizzate non attivino più il crash dovuto a un child già associato a un parent su Android.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- android, typescript
- Ambito
- mobile-dev
- Tipo di issue
- Bug
- Difficoltà
- 1/5
- Tempo stimato
- Meno di un'ora
- Stato di attività
- Attiva
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 92/100