Browse Source

Support hiding back button in Toolbar

Guy Carmeli 8 years ago
parent
commit
9a736d7e93

+ 3
- 0
android/app/src/main/java/com/reactnativenavigation/core/objects/Screen.java View File

39
     private static final String KEY_NAVIGATION_BAR_COLOR = "navigationBarColor";
39
     private static final String KEY_NAVIGATION_BAR_COLOR = "navigationBarColor";
40
     private static final String KEY_NAV_BAR_BUTTON_COLOR = "navBarButtonColor";
40
     private static final String KEY_NAV_BAR_BUTTON_COLOR = "navBarButtonColor";
41
     private static final String KEY_NAV_BAR_TEXT_COLOR = "navBarTextColor";
41
     private static final String KEY_NAV_BAR_TEXT_COLOR = "navBarTextColor";
42
+    private static final String KEY_BACK_BUTTON_HIDDEN = "backButtonHidden";
42
     private static final String KEY_TAB_NORMAL_TEXT_COLOR = "tabNormalTextColor";
43
     private static final String KEY_TAB_NORMAL_TEXT_COLOR = "tabNormalTextColor";
43
     private static final String KEY_TAB_SELECTED_TEXT_COLOR = "tabSelectedTextColor";
44
     private static final String KEY_TAB_SELECTED_TEXT_COLOR = "tabSelectedTextColor";
44
     private static final String KEY_TAB_INDICATOR_COLOR = "tabIndicatorColor";
45
     private static final String KEY_TAB_INDICATOR_COLOR = "tabIndicatorColor";
52
     public final String navigatorEventId;
53
     public final String navigatorEventId;
53
     public final String icon;
54
     public final String icon;
54
     public ArrayList<Button> buttons;
55
     public ArrayList<Button> buttons;
56
+    public final boolean backButtonHidden;
55
     public HashMap<String, Object> passedProps = new HashMap<>();
57
     public HashMap<String, Object> passedProps = new HashMap<>();
56
 
58
 
57
     // Navigation styling
59
     // Navigation styling
82
             passedProps = ((ReadableNativeMap) screen.getMap(KEY_PROPS)).toHashMap();
84
             passedProps = ((ReadableNativeMap) screen.getMap(KEY_PROPS)).toHashMap();
83
         }
85
         }
84
         buttons = getButtons(screen);
86
         buttons = getButtons(screen);
87
+        backButtonHidden = getBoolean(screen, KEY_BACK_BUTTON_HIDDEN);
85
         setToolbarStyle(screen);
88
         setToolbarStyle(screen);
86
     }
89
     }
87
 
90
 

+ 1
- 1
android/app/src/main/java/com/reactnativenavigation/views/RnnToolBar.java View File

232
         if (hasDrawer && mDrawerIcon == null) {
232
         if (hasDrawer && mDrawerIcon == null) {
233
             navArrow = (DrawerArrowDrawable) this.getNavigationIcon();
233
             navArrow = (DrawerArrowDrawable) this.getNavigationIcon();
234
         } else {
234
         } else {
235
-            if (isBack) {
235
+            if (isBack && !screen.backButtonHidden) {
236
                 navArrow = new DrawerArrowDrawable(ContextProvider.getActivityContext());
236
                 navArrow = new DrawerArrowDrawable(ContextProvider.getActivityContext());
237
             } else if (hasDrawer) {
237
             } else if (hasDrawer) {
238
                 navIcon = mDrawerIcon;
238
                 navIcon = mDrawerIcon;