Aktualizacja AVPlayer currentTime dla UISlidera, gdy ładowanie ViewController

Gram w utworachAVPlayer. Stworzyłem osobny kontroler widoku dla mojego odtwarzacza multimedialnego i inicjalizacji, a wszystkie metody, których używam dla odtwarzacza (odtwarzanie, pauza, powtórzenie, losowanie) znajdują się w tym samym kontrolerze widoku.

Aktualizuję suwak w ten sposób:

[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(sliderUpdate:) userInfo:nil repeats:YES];`


- (void) sliderUpdate:(id) sender{
    int currentTime =   (int)((song.player.currentTime.value)/song.player.currentTime.timescale);
    slider.value=currentTime;
    NSLog(@"%i",currentTime);

    song.currentTime=currentTime;
    int currentPoint=(int)((song.player.currentTime.value)/song.player.currentTime.timescale);
    int pointMins=(int)(currentPoint/60);
    int pointSec=(int)(currentPoint%60);

    NSString *strMinlabel=[NSString stringWithFormat:@"%02d:%02d",pointMins,pointSec];
    lblSlidermin.text=strMinlabel;
    song.strslidermin=strMinlabel;
}

Po wyjściu z viewcontrollera i ponownym pojawieniu się utworu odtwarzany jest utwór, ale problem nie jest aktualizowany przez suwak. Dlatego stworzyłem pojedynczą klasę, aby przypisać aktualnie odtwarzane szczegóły utworu. Również w aktualizacji suwaka przypisałemplayerCurrentTime (wartość slidercurrent) dla zmiennej klasy singleton. I mójviewdidload metoda, którą przypisałem w ten sposób:

if (song.isPlaying==NO) {
    [self prePlaySong];
}else{
    lblAlbum.text=song.currentAlbum;
    lblArtist.text=song.currentArtist;
    lblSong.text=song.currentSong;
    slider.value=song.currentTime;
    slider.maximumValue=song.sliderMax;
    slider.minimumValue=song.sliderMin;
    imgSong.image=song.songImage;
    [btnMiddle setBackgroundImage:[UIImage imageNamed:@"pause.png"] forState:UIControlStateNormal];
}

ale suwak nie jest aktualizowany. Dlaczego tak i jak mogę rozwiązać ten problem?

questionAnswers(2)

yourAnswerToTheQuestion