Parcourir la source

add actual navigatorID to screens

Guy Carmeli il y a 9 ans
Parent
révision
dfa881134a

+ 0
- 3
android/app/src/main/java/com/reactnativenavigation/core/objects/Screen.java Voir le fichier

@@ -16,7 +16,6 @@ public class Screen extends JsonObject implements Serializable {
16 16
     private static final String KEY_TITLE = "title";
17 17
     private static final String KEY_SCREEN = "screen";
18 18
     public static final String KEY_SCREEN_INSTANCE_ID = "screenInstanceID";
19
-    public static final String KEY_STACK_ID = "stackID";
20 19
     public static final String KEY_NAVIGATOR_ID = "navigatorID";
21 20
     public static final String KEY_NAVIGATOR_EVENT_ID = "navigatorEventID";
22 21
     private static final String KEY_ICON = "icon";
@@ -25,7 +24,6 @@ public class Screen extends JsonObject implements Serializable {
25 24
     public String title;
26 25
     public String screenId;
27 26
     public String screenInstanceId;
28
-    public String stackId;
29 27
     public String navigatorId;
30 28
     public String navigatorEventId;
31 29
     public int icon;
@@ -35,7 +33,6 @@ public class Screen extends JsonObject implements Serializable {
35 33
         title = getString(screen, KEY_TITLE);
36 34
         screenId = getString(screen, KEY_SCREEN);
37 35
         screenInstanceId = getString(screen, KEY_SCREEN_INSTANCE_ID);
38
-        stackId = getString(screen, KEY_STACK_ID);
39 36
         navigatorId = getString(screen, KEY_NAVIGATOR_ID);
40 37
         navigatorEventId = getString(screen, KEY_NAVIGATOR_EVENT_ID);
41 38
         icon = getInt(screen, KEY_ICON);

+ 0
- 1
android/app/src/main/java/com/reactnativenavigation/views/RctView.java Voir le fichier

@@ -23,7 +23,6 @@ public class RctView extends FrameLayout {
23 23
         String componentName = screen.screenId;
24 24
         Bundle passProps = new Bundle();
25 25
         passProps.putString(Screen.KEY_SCREEN_INSTANCE_ID, screen.screenInstanceId);
26
-        passProps.putString(Screen.KEY_STACK_ID, screen.stackId);
27 26
         passProps.putString(Screen.KEY_NAVIGATOR_ID, screen.navigatorId);
28 27
         passProps.putString(Screen.KEY_NAVIGATOR_EVENT_ID, screen.navigatorEventId);
29 28
 

+ 5
- 7
src/platformSpecific.android.js Voir le fichier

@@ -14,7 +14,6 @@ function startSingleScreenApp(params) {
14 14
     return;
15 15
   }
16 16
 
17
-  console.log(RctActivity);
18 17
   addNavigatorParams(screen);
19 18
   addNavigatorButtons(screen);
20 19
   RctActivity.startSingleScreenApp(screen);
@@ -27,7 +26,7 @@ function startTabBasedApp(params) {
27 26
   }
28 27
 
29 28
   params.tabs.forEach(function (tab, idx) {
30
-    addNavigatorParams(tab, idx)
29
+    addNavigatorParams(tab, null, idx)
31 30
     addNavigatorButtons(tab);
32 31
   });
33 32
 
@@ -35,16 +34,15 @@ function startTabBasedApp(params) {
35 34
 }
36 35
 
37 36
 function navigatorPush(navigator, params) {
38
-  addNavigatorParams(params)
37
+  addNavigatorParams(params, navigator)
39 38
   addNavigatorButtons(params);
40 39
   RctActivity.navigatorPush(params);
41 40
 }
42 41
 
43
-function addNavigatorParams(screen, idx = '') {
44
-  screen.stackID = utils.getRandomId();
45
-  screen.navigatorID = utils.getRandomId() + '_nav' + idx;
42
+function addNavigatorParams(screen, navigator = null, idx = '') {
43
+  screen.navigatorID = navigator ? navigator.navigatorID : utils.getRandomId() + '_nav' + idx;
46 44
   screen.screenInstanceID = utils.getRandomId();
47
-  screen.navigatorEventID = screen.screenInstanceID + '_events';
45
+  screen.navigatorEventID = navigator ? navigator.navigatorEventID : screen.screenInstanceID + '_events';
48 46
 }
49 47
 
50 48
 function addNavigatorButtons(screen) {