2017-03-31 2 views
0

私の音楽アプリでは、httpリクエストを行い、サーバーから.mp3ファイルを再生する「クリック」機能があります。私の問題は、アプリケーションがサーバーからオーディオを取得するために、しばらく時間がかかることがあるため、なぜイオンスピナーを追加したのかということです。私はスピナーがオーディオがロードされて消えている間だけ現れるようにしたいと思います。イオンスピナー、音楽のロード待ち中

Home.html

<ion-card-content (click)="play(sound)"> 
     <div class="wrapper"> 
     <ion-spinner class="color-green" name="{{ sound.spinner }}"></ion-spinner> 
     <img src="{{ sound.imageUrl }}" />  
     </div>  

    </ion-card-content> 

Home.ts Home.tsで

/* Plays a sound, pausing other playing sounds if necessary */ 
    play(sound) { 



console.log(sound) 
if(this.media) {  
    this.media.pause();  
} 
this.media = new Audio(sound.file);  
this.media.load(); 
this.media.play(); 
} 

答えて

1

コンストラクタ

<ion-card-content (click)="play(sound)"> 
     <div class="wrapper"> 
     <ion-spinner class="color-green" [name]="sound.spinner" [paused]="toggleSpinner"></ion-spinner> 
     <img src="{{ sound.imageUrl }}" />  
     </div>  

    </ion-card-content> 

以下のコードを追加します

toggleSpinner= false 

play(sound) { 
    toggleSpinner= true 
...... 
} 
+0

Aravind、応答に感謝します。ローディングは今表示されますが、消えません。ロードが完了した後、「偽」に戻りません。ありがとうございます –

+0

あなたは精巧にできますか? – Aravind

+0

再生ボタンをクリックすると、イオンロードが表示されます(それは良いです)。オーディオが再生された後、イオンローディングは消えなければならないときにまだそこにあります。 オーディオがロードされて再生されても、イオンローディングのスピナーはまだ進行中です ホープが意味を成してくれたら、ありがとうございます –

関連する問題