更新時間:2021-09-30 來源:黑馬程序員 瀏覽量:
在移動App中,當頁面進行耗時操作時,可以使用載入指示器提示用戶操作正在進行中。載入指示器通常會疊加一個個半透明的背景幕來阻止用戶的其他頁面交互。在inic中,使用$ionicLoding服務提供的兩個方法操作載入指示器。
.show(options):顯示載入指示器。
.hide():隱藏載入指示器。
在上述方法中,show()方法的options參數(shù)是一個JSON對象,該對象中可以包含的屬性如表11-14所示。
表11-14options對象屬性
接下來通過一個案例來演示載入指示器的具體用法,如demo11-6.html所示。demo11-6.html所示。
<html> <head> <meta charset="uti-8> <meta name="viewport"content="initial-scale=1,maximum-scale=1,user- scalable=no,width=device-width"> <title>載入指示器</title> <1ink href="lib/ionic/css/ionic.css" rel="stylesheet"> <script src="lib/ionic/js/ionic.bundle.min.js"></script> </head> <body ng-app="starter"ng-controller-"myCtr1"> <ion-view> <ion-header-barclass="royal-bg"> <h1 class="title">菜品種類</h1> </ion-header-bar> <ion-list> <ion-item ng- repeat"item in foods” <href-"#"> {(item.name)}</ion-item> </ion-list> </ion-content> </ion-view> </body> <script type="text/javascript"> angular.module('starter',['ionic']) .controller('myCtrl',function($scope,$timeout,$ionicLoading){ //顯示載入指示器 $ionicLoading.show({ content:'Loading', animation:'fade-in, showBackdrop:true, maxWidth:200, showDelay:0 }) ; //定時器設置加載列表內容后隱藏載入指示器 $timeout(function(){ $scope.foods=[{name:魚丸'},{name:肥牛',{name:菠菜'}]; $ionicLoading.hide(); },2000); }); </script> </html>
在上述代碼中,在主界面定義了一個菜品列表。通過定時器來模擬延時加載菜品列表的效果,在列表加載完畢前顯示載入指示器。
第25~31行定義的show()方法用于顯示載入指示器;第33~37行使用定時器設置2000ms后為列表添加數(shù)據,顯示數(shù)據后隱藏載入指示器。
使用Chrome瀏覽器訪問demol16-.html,可以看到載入指示器(一個載入圖標顯示在背景幕上)。
2000ms后,列表顯示列表數(shù)據,隱藏載入指示器
猜你喜歡: