Ionic Backdrop

Нам часто нужно показывать или скрывать слой backdrop в интерфейсе, например, во всплывающих окнах, окнах загрузки и других всплывающих слоях.

В компонентах можно использовать $ionicBackdrop.retain() для показа backdrop и $ionicBackdrop.release() для скрытия backdrop.

Каждый раз, когда вызывается retain, backdrop остаётся видимым, пока не будет вызван release для скрытия слоя backdrop.


Пример

HTML-код

<body ng-app="starter" ng-controller="actionsheetCtl" >
    <ion-pane>
        <ion-content >
            <h2 ng-click="action()">$ionicBackdrop</h2>
        </ion-content>
    </ion-pane>
</body>

Код JavaScript

angular.module('starter', ['ionic'])

.run(function($ionicPlatform) {
  $ionicPlatform.ready(function() {
    // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
    // for form inputs)
    if(window.cordova && window.cordova.plugins.Keyboard) {
      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
    }
    if(window.StatusBar) {
      StatusBar.styleDefault();
    }
  });
})

.controller( 'actionsheetCtl',['$scope','$timeout' ,'$ionicBackdrop',function($scope,$timeout,$ionicBackdrop){

    $scope.action = function() {
       $ionicBackdrop.retain();
       $timeout(function() {    //默认让它1秒后消失
         $ionicBackdrop.release();
       }, 1000);
    }; 
}])

Эффект отображения показан на рисунке ниже:

Другие расширения