I fond below code for $ionicLoading for page state change on navigation
$scope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams){
$ionicLoading.show({
template: '<p>Loading...</p><ion-spinner class="spinner spinner-bubbles"></ion-spinner>'
});
});
$scope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
$timeout(function(){
$ionicLoading.hide();
},2000);
});
But it is work only for page state change.
I need for $ionicModal modal popup open and close state.