Back button not showing when coming from nested pages (tabs)

it work for me as well . My problem was on 2nd time navigation same page repeatedly back button was missing . It was showing for 1st navigation only. I added this piece of code in controller and it worked magically. But i don’t know how lol

Hi everyone

Just in case someone’s having the same issue as of today (v1.3+): make sure you do not use href="#" in your templates. It can somehow mess with the navigation/history handling of ionic. Only ui-sref and proper ui-router states should be used.

@jdupouy - I am having to modify an older Ionic v1 app and came across this issue but the Solution 2 you provided is not working. The only thing I can think that is different is that where I am routing to and back from when my back button disappears.

Pages:

Register
Tabs
     TabA-root
        TabA-child
     TabB-root
        TabB-child

When user routes to TabB-root then to TabB-Child, the back button is there. On that page is a register button which redirects user to the Register page - which is outside the Tabs structure. If user cancels registrations or completes the registration it routes the user back to TabB-Child view. All of it works, except the back button is now hidden and there is no clean way to get back to TabB-root. Clicking on the tab B button (on the tab bar) it takes you back to TabB-root and then if you go into the TabB-child view again the back button is still hidden.

I got excited about your solution as it seems to work for everyone else, but it did not work for me.

Turns out I already had a solution to this issue in the app.

User navigates to TabB-Root…then selects an item that takes them into TabB-Child. TabB-Child has a button that routes user to the Register page.

In the Register page controller, disable the native back button with:
$ionicNavBarDelegate.showBackButton(false);

On Register page is a custom close button that executes a $state.go('TabB-Child') call - not a back button. The close button would route the user back to the TabB-Child view.

In the TabB-Child page controller, ensure the native back button is enabled:

   $ionicNavBarDelegate.showBackButton(true);
   $scope.goPage = function() {
      $state.go("TabB-Root");`
   }

On the TabB-Child native back button, override the default back button behavior with a:
ng-click="goPage()"