Sam Baumgarten
Sam Baumgarten

Reputation: 2249

Set UISlider.value to AVPlayer.currentTime

I am trying to set a UISlider's Value to a AVPlayer's Current Time.

I am trying to use this code audioPlayer.currentTime = nowPlayingSlider.value;

I am getting this error:
Setter method is needed to assign to object using property assignment syntax
How do I get this to work.

Upvotes: 7

Views: 12780

Answers (3)

John G
John G

Reputation: 128

Here is how I handled this:

-(IBAction) timeScrubberChange:(id) sender{
CMTime t = CMTimeMake(self.nowPlayingTimeScrubber.value, 1);
self.nowPlayingCurrentTime.text = [self formatTimeCodeAsString: t.value];
self.nowPlayingDuration.text = [self formatTimeCodeAsString:(self.actualDuration - t.value)];
[self.avPlayer seekToTime:t];                                
}

Upvotes: 10

Timur Mustafaev
Timur Mustafaev

Reputation: 4929

Sam, check this two methods:

-currentTime and -seekToTime:

Here

They are in AVPlayer class

Upvotes: 3

Mundi
Mundi

Reputation: 80265

Maybe you have it the other way round?

To set the slider to the current place in the sound it should be:

[nowPlayingSlider setValue:[audioPlayer currentTime]];

To skip in the audio according to a change of the slider:

[audioPlayer setCurrentTime:nowPlayingSlider.value];

Let me know if it works.

Upvotes: 1

Related Questions