Wie verwende ich den AVPlayer in mehreren Ansichten und setze die Steuerung fort?

Ich erstelle eine App mit xcode 4.6 auf iOS 6.1 mit einer TabBar und 2 verschiedenen tableView.

Jede Tabellenansicht liest eine Zeile aus einer file.plist und wenn Sie auf eine Zeile tippen, laden Sie eine Detailansicht. Der DetailViewController ist für die 2 TableView identisch, jedoch:

Wenn Sie die App starten, tippen Sie auf eine erste Schaltfläche. Ich sehe FirstView mit meiner Tabelle und der Audioliste. Wenn ich eine Datei in der Liste auswähle, lade ich eine Detailansicht und höre meine Datei sehr gut. Wenn Sie jetzt auf die zweite Ansicht in TabBar tippen, kann ich mit dem Abspielen beginnen andere Audio-Datei aus der zweiten Ansicht, aber ich höre Overlay zu Firs Audio und AVplayer nicht überschreiben.

Dort meine Codierung:

Aus der TableView-Lade-Liste:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

    if([@"detailList" isEqualToString:segue.identifier]) {

        NSIndexPath *index = [self.tableView indexPathForCell:sender];
        [[segue destinationViewController] setSaved:[loadData objectAtIndex:index.row]];
    }
}

In einer detaillierten Ansicht:

    if (mysound.rate == 1.0) {

        UIImage *img = [UIImage imageNamed:@"Play_BT.png"];
        [control setImage:img forState:UIControlStateNormal];
        [mysound pause];

    } else {

        UIImage *img = [UIImage imageNamed:@"Pause_BT.png"];
        [control setImage:img forState:UIControlStateNormal];

        NSURL *url = [NSURL URLWithString:[saved objectForKey:@"audio"]];
        mysound = [[AVPlayer alloc] initWithURL:url];
        [mysound setAllowsExternalPlayback:YES];
        [mysound setUsesExternalPlaybackWhileExternalScreenIsActive: YES];
        [mysound play];
    }
}

Hier kommen die Probleme, dieser Code funktioniert sehr gut, aber wenn Sie auf die Tab-Leiste tippen und anderes Audio von einer anderen Seite laden, höre ich Audio-Overlay.

Wie kann ich AVPlayer in Override the verwenden?NSURL *url = [NSURL URLWithString:[saved objectForKey:@"audio"]];wann von tableiste wechseln?

Vielen Dank.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage