ionic 背景层


我们经常需要在 UI 上,例如在弹出框、加载框、其他弹出层中显示或隐藏背景层。

在组件中可以使用$ionicBackdrop.retain()来显示背景层,使用$ionicBackdrop.release()隐藏背景层。

每次调用retain后,背景会一直显示,直到调用release消除背景层。

实例

HTML 代码

  1. <body ng-app="starter" ng-controller="actionsheetCtl" >
  2. <ion-pane>
  3. <ion-content >
  4. <h2 ng-click="action()">$ionicBackdrop</h2>
  5. </ion-content>
  6. </ion-pane>
  7. </body>

JavaScript 代码

  1. angular.module('starter', ['ionic'])
  2.  
  3. .run(function($ionicPlatform) {
  4. $ionicPlatform.ready(function() {
  5. // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
  6. // for form inputs)
  7. if(window.cordova && window.cordova.plugins.Keyboard) {
  8. cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
  9. }
  10. if(window.StatusBar) {
  11. StatusBar.styleDefault();
  12. }
  13. });
  14. })
  15.  
  16. .controller( 'actionsheetCtl',['$scope','$timeout' ,'$ionicBackdrop',function($scope,$timeout,$ionicBackdrop){
  17.  
  18. $scope.action = function() {
  19. $ionicBackdrop.retain();
  20. $timeout(function() { //默认让它1秒后消失
  21. $ionicBackdrop.release();
  22. }, 1000);
  23. };
  24. }])

显示效果如下图所示: