0
xcode 9とswift 4を使用しています。私のアプリでは、viewDidLoadで音楽を再生しています。私は別のビューに行くために、ビューコントローラを終了するとき、それは必要なように再生を続けます。いつの間にか、私はそのビューコントローラーに戻ってくると、曲は再び再生を開始します。この曲は最初に読み込まれた曲と重なっています。これをやめることをやめさせるためのアイデアはありますか?元のVCに戻ったときに曲が再生される
do
{
let audioPath = Bundle.main.path(forResource: "APP4", ofType: "mp3")
try player = AVAudioPlayer(contentsOf: NSURL(fileURLWithPath: audioPath!) as URL)
}
catch
{
//catch error
}
let session = AVAudioSession.sharedInstance()
do
{
try session.setCategory(AVAudioSessionCategoryPlayback)
}
catch
{
}
player.numberOfLoops = -1
player.play()
理想的には、オーディオを再生するコードは、どこか別のマネージャーに別々に格納する必要があります。 –
私はあなたが何を意味するのか見て、私は私のViewDidLoadにコードを入れましたが、最初と最後の行にエラーが表示されます。インスタンスメンバ 'ViewController'では、静的メンバ 'isMusicPlaying'は使用できません。私は私のviewDidLoadでも静的変数を入れてみましたが、私はこのエラーがあります。静的プロパティは型に対してのみ宣言できます。 – DaManSeth76
@ DaManSeth76変数は 'viewDidLoad'関数の外で宣言されなければなりません。クラス名で呼び出す必要があります。たとえば、 'MyViewController.isPlaying' –