2014-09-16 24 views
8

Chcę rozpocząć, wstrzymać i zatrzymać (podobnie jak restart) mój plik mp3 i używam AVPlayer. Dostaję pliki z serwera.Zatrzymaj AVPlayer i ponownie uruchom plik mp3

aby rozpocząć piosenkę zrobić:

[self.player start]; 

Aby wstrzymać zrobić:

[self.player pause]; 

ale kiedy chcę zatrzymać utwór i załaduj go, tak że piosenka zaczyna się od początku kiedy użytkownik kliknie przycisk "start" następnym razem, nie mam pojęcia, co robić ...

Próbowałem coś takiego:

[self.player pause]; 
self.player = nil; 

Ale wtedy odtwarzacz jest oczywiście zerowy i nie mogę ponownie uruchomić pliku z ponowną inicjalizacją ... Jakieś pomysły, jak to zatrzymać?

+2

[self.player seekToTime: CMTimeMakeWithSeconds (0, 5) completionHandler: nil], aby odtworzyć go od początku ponownie. – Sandeep

+0

Doskonały, który działa jak urok, dziękuję bardzo! – Davis

Odpowiedz

14

Zatrzymaj wideo za pomocą [player pause]

Następnie użyj tego kodu po uruchomieniu filmu.

[player seekToTime:kCMTimeZero]; 
[player play]; 

Podoba mi się to lepiej niż komentarz, który rozwiązał OP to b/c eliminuje ostrzeżenie i używa stałej.

1

Najlepsze rozwiązanie to zrobić w Swift:

player.seek(to: kCMTimeZero) 
player.play() 
Powiązane problemy