3

私は、議事、ニュースセクション、アルバムセクションなど、いくつかの異なるアクティビティで構成されるバンド用のアプリに取り組んでいます。バンド用なので、バックグラウンドでバンドの曲を演奏したいと思います。

これはそれほど問題ではありませんが、ユーザーが必要に応じていつでも曲を停止、スキップ、または再生できるように、すべてのアクティビティの下部に小さな音楽プレーヤーを表示したいと思います。この例は、たとえばMobileRoadieのアプリにあります。

しかし、私はこれを行う方法がわかりません。私の推測では、独自のレイアウトで音楽プレーヤークラスを作成し、これを各アクティビティ/レイアウトの下部に含めます。ただし、すべてのアクティビティは独自のスレッドで開始されるため、これにより各アクティビティのプレーヤーがリセットされると思います。

では、音楽プレーヤーの状態が維持されるすべてのアクティビティに共通の音楽プレーヤーを追加するにはどうすればよいでしょうか。

たとえば、Mobile Roadieの音楽ベースのアプリをダウンロードすると、私が何を意味するのかがわかります。


フラグメントを使用することにしましたが、既存のアクティビティでフラグメントを使用できるかどうかわかりません。私が見つけたすべての例は、既存のプロジェクトではなく、完全に新しいプロジェクトに焦点を当てています。つまり、フラグメントを作成して、既存のアクティビティで使用できますか?(既存のアジェンダアクティビティの上に音楽プレーヤーを表示するなど)

4

1 に答える 1

4

次のようにすることをお勧めします。すべてのアクティビティで音楽の再生状態を保持する必要があるため、これを実現するにはサービスを使用する必要があります。また、アクティビティとは別に存在する必要があるコントロールパネルが必要です。それを行うための最良の方法は、フラグメントを使用することです。サービスに接続し、サービスを制御するためのUIを提供するフラグメントを作成してから、このフラグメントを必要なすべてのアクティビティに追加します。

于 2011-11-29T10:08:03.390 に答える