Ich habe ein sehr seltsames Problem mit dem nativen Navigator reagieren.Native Navigator didfocus Ereignis-Listener reagieren
Ich habe eine ScrollableTabView
, die mehrere Navigatoren hat, auf einigen Szenen eines bestimmten Navigators möchte ich die untere Navigation ausblenden.
Ich versuchte, das onFocus Ereignis für Navigator mit Hilfe der aktuellen Szene Details zu bekommen, stellte sich heraus, es veraltet wurde (obwohl es auf xCode und Android Simulatoren gut funktioniert, aber es funktioniert nicht, wenn ich die App freigeben.)
Mein zweiter Versuch war den didfocus Ereignis-Listener auf dem übergeordneten Stapel componentDidMount wie unten anbringt:
this.refs.stackNavigator.navigationContext.addListener('didfocus',(event) => { // Some code here calling an action });
Aber auch, wie ich irgendwo jemand sagt gefunden hat nicht funktioniert, dass die Zuhörer Anbringen vor dem Rendern sollte die Navigator und schlug vor, die Liste anzuhängen Ener auf die renderScene
Funktion des Navigators. (auch alles funktioniert gut auf Simulatoren, aber nicht auf veröffentlichte Anwendungen.)
Mein dritter Versuch war tatsächlich tun, dass die renderScene
-Methode und auch gleiche Ergebnis wie die beiden oben genannten Versuche, alle Arbeiten an Simulatoren in Ordnung, aber In der Veröffentlichung funktioniert nichts. (Auch funktioniert alles auf Simulatoren, aber nicht auf freigegebenen Anwendungen.)
Jede Hilfe oder wenn jemand solches Verhalten begegnet, würde ich sehr seine Rückmeldung schätzen.
Danke Gemeinde!
Ich glaube, dass Sie auch eine 'i = {i}' Stütze an jede Registerkarte übergeben müssen. Wo "i" ist der Index der Registerkarte. –
Danke für Ihre Antwort Matt. Ja, ich benutze 'reactive-native-scrollable-tab-view', aber in jeder Registerkarte gibt es einen Navigator. ' ' Mein Problem ist in diesem Kind-Navigator auf der Registerkarte Ebene nicht. Bei bestimmten Szenen im ersten Navigator möchte ich die untere Navigation ausblenden. Ich bin mir nicht sicher, ob dein Weg helfen würde. Du denkst? –