iOSストーリーボードでシングルトンを初期化する方法を教えてください。私の理解では、これまでの標準的なパターンは、我々はシングルトンになりたいと、このコードが動作するクラス内でこのようになっていることである。iOSストーリーボードでオブジェクトを初期化する方法シングルトン
class var sharedInstance: LibraryAPI {
struct Singleton {
static let instance = LibraryAPI()
}
return Singleton.instance
}
私はオーディオを再生するためにAVPlayerに依存するカスタムのMusicPlayerオブジェクトを作成しています。私は、このMusicPlayerが、アプリケーションが起動するとすぐに存在してほしいです。現在、MusicPlayerはストーリーボードに作成されており、IBOutletsとIBActionsを使用してボタンとラベルをMusicPlayerに接続することができます。私がviewControllerスタックをバックアップすると、MusicPlayerの割り当てが解除されます。下図のようになります。
どの方法私は、ストーリーボードを作成し、MusicPlayerを破壊したときに表示するためにオーバーライドすることができますか?これまでのところ、init()のオーバーライドは呼び出されていますが、deinitは呼び出されていません。私はドキュメントやオンラインで答えを見つけ出すことができません。
このアプリを設計するより良い方法がある可能性があります。私はシングルトンが理にかなっていると思うのは、ただ1つのMusicPlayerがあるべきだからです。その状態だけがアプリの存続期間を通じて変化します。
ありがとうございました。